xref: /original-bsd/sbin/XNSrouted/defs.h (revision c3e32dec)
1 /*
2  * Copyright (c) 1983, 1993
3  *	The Regents of the University of California.  All rights reserved.
4  *
5  * %sccs.include.redist.c%
6  *
7  *	@(#)defs.h	8.1 (Berkeley) 06/05/93
8  */
9 
10 #include <sys/types.h>
11 #include <sys/socket.h>
12 
13 #include <net/route.h>
14 #include <netns/ns.h>
15 #include <netns/idp.h>
16 #if defined(vax) || defined(pdp11)
17 #define xnnet(x) ((u_long) (x)->rip_dst[1] << 16 | (u_long) (x)->rip_dst[0] )
18 #else
19 #define xnnet(x) ((u_long) (x)->rip_dst[0] << 16 | (u_long) (x)->rip_dst[1] )
20 #endif
21 #define	IDPPORT_RIF	1
22 
23 #include <stdio.h>
24 #include <syslog.h>
25 
26 #include "protocol.h"
27 #include "trace.h"
28 #include "interface.h"
29 #include "table.h"
30 #include "af.h"
31 
32 
33 /*
34  * When we find any interfaces marked down we rescan the
35  * kernel every CHECK_INTERVAL seconds to see if they've
36  * come up.
37  */
38 #define	CHECK_INTERVAL	(5*60)
39 
40 #define equal(a1, a2) \
41 	(bcmp((caddr_t)(a1), (caddr_t)(a2), sizeof (struct sockaddr)) == 0)
42 #define	min(a,b)	((a)>(b)?(b):(a))
43 
44 struct	sockaddr_ns addr;	/* Daemon's Address */
45 int	s;			/* Socket to listen on */
46 int	kmem;
47 int	supplier;		/* process should supply updates */
48 int	install;		/* if 1 call kernel */
49 int	lookforinterfaces;	/* if 1 probe kernel for new up interfaces */
50 int	performnlist;		/* if 1 check if /vmunix has changed */
51 int	externalinterfaces;	/* # of remote and local interfaces */
52 int	timeval;		/* local idea of time */
53 int	noteremoterequests;	/* squawk on requests from non-local nets */
54 int	r;			/* Routing socket to install updates with */
55 struct	sockaddr_ns ns_netmask;	/* Used in installing routes */
56 
57 char	packet[MAXPACKETSIZE+sizeof(struct idp)+1];
58 struct	rip *msg;
59 
60 char	**argv0;
61 
62 int	sndmsg();
63 int	supply();
64 int	cleanup();
65 int	rtioctl();
66 #define	ADD	1
67 #define	DELETE	2
68 #define CHANGE	3
69