/* $OpenBSD: tree.h,v 1.5 2004/05/06 22:29:15 deraadt Exp $ */12/* Definitions for address trees... */34/*-5* SPDX-License-Identifier: BSD-3-Clause6*7* Copyright (c) 1995 The Internet Software Consortium. All rights reserved.8*9* Redistribution and use in source and binary forms, with or without10* modification, are permitted provided that the following conditions11* are met:12*13* 1. Redistributions of source code must retain the above copyright14* notice, this list of conditions and the following disclaimer.15* 2. Redistributions in binary form must reproduce the above copyright16* notice, this list of conditions and the following disclaimer in the17* documentation and/or other materials provided with the distribution.18* 3. Neither the name of The Internet Software Consortium nor the names19* of its contributors may be used to endorse or promote products derived20* from this software without specific prior written permission.21*22* THIS SOFTWARE IS PROVIDED BY THE INTERNET SOFTWARE CONSORTIUM AND23* CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,24* INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF25* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE26* DISCLAIMED. IN NO EVENT SHALL THE INTERNET SOFTWARE CONSORTIUM OR27* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,28* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT29* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF30* USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND31* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,32* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT33* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF34* SUCH DAMAGE.35*36* This software has been written for the Internet Software Consortium37* by Ted Lemon <[email protected]> in cooperation with Vixie38* Enterprises. To learn more about the Internet Software Consortium,39* see ``http://www.vix.com/isc''. To learn more about Vixie40* Enterprises, see ``http://www.vix.com''.41*/4243/* A pair of pointers, suitable for making a linked list. */44typedef struct _pair {45caddr_t car;46struct _pair *cdr;47} *pair;4849struct tree_cache {50unsigned char *value;51int len;52int buf_size;53time_t timeout;54};5556struct universe {57const char *name;58struct hash_table *hash;59struct option *options[256];60};6162struct option {63const char *name;64const char *format;65struct universe *universe;66unsigned char code;67};686970