/*
* CDDL HEADER START
*
* The contents of this file are subject to the terms of the
* Common Development and Distribution License, Version 1.0 only
* (the "License"). You may not use this file except in compliance
* with the License.
*
* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
* See the License for the specific language governing permissions
* and limitations under the License.
*
* When distributing Covered Code, include this CDDL HEADER in each
* file and include the License file at usr/src/OPENSOLARIS.LICENSE.
* If applicable, add the following below this CDDL HEADER, with the
* fields enclosed by brackets "[]" replaced with your own identifying
* information: Portions Copyright [yyyy] [name of copyright owner]
*
* CDDL HEADER END
*/
/*
* Copyright 2003 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
/* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */
/* All Rights Reserved */
/*
* Portions of this source code were derived from Berkeley 4.3 BSD
* under license from the Regents of the University of California.
*/
#ifndef _IN_RIPNGD_DEFS_H
#define _IN_RIPNGD_DEFS_H
#pragma ident "%Z%%M% %I% %E% SMI"
#ifdef __cplusplus
extern "C" {
#endif
#include <fcntl.h>
#include <stdio.h>
#include <stdlib.h>
#include <syslog.h>
#include <netdb.h>
#include <signal.h>
#include <stropts.h>
#include <strings.h>
#include <unistd.h>
#include <errno.h>
#include <malloc.h>
#include <limits.h>
#include "table.h"
#include "trace.h"
#include "interface.h"
/*
* Timer values (in seconds) used in managing the routing table.
* Every update forces an entry's timer to be reset. After
* EXPIRE_TIME without updates, the entry is marked invalid,
* but held onto until GARBAGE_TIME so that others may
* see it "be deleted".
*/
/*
* Return a random number from a an range inclusive of the endpoints
*/
/*
* When we find any interfaces marked down we rescan the
* kernel every CHECK_INTERVAL seconds to see if they've
* come up.
*/
#define min(a, b) ((a) > (b) ? (b) : (a))
/*
* The maximum receive buffer size is controlled via Solaris' NDD udp_max_buf
* tunable.
*/
/*
*/
extern struct sockaddr_in6 allrouters;
extern struct in6_addr allrouters_in6;
extern char *control;
extern int iocsoc;
extern struct timeval lastfullupdate;
extern int max_poll_ifs;
extern boolean_t needupdate;
extern char *packet;
extern int poll_ifs_num;
extern int rip6_port;
extern int supplyinterval;
extern void dynamic_update(struct interface *);
extern void initifs(void);
int, int);
extern void setup_rtsock(void);
extern void solicitall(struct sockaddr_in6 *);
int, boolean_t);
extern void supplyall(struct sockaddr_in6 *, int,
extern void term(void);
extern void timer(void);
#ifdef __cplusplus
}
#endif
#endif /* _IN_RIPNGD_DEFS_H */