1 /* 2 * Copyright (c) 1983 Regents of the University of California. 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms are permitted 6 * provided that this notice is preserved and that due credit is given 7 * to the University of California at Berkeley. The name of the University 8 * may not be used to endorse or promote products derived from this 9 * software without specific prior written permission. This software 10 * is provided ``as is'' without express or implied warranty. 11 * 12 * @(#)defs.h 5.4 (Berkeley) 02/16/88 13 */ 14 15 /* 16 * Internal data structure definitions for 17 * user routing process. Based on Xerox NS 18 * protocol specs with mods relevant to more 19 * general addressing scheme. 20 */ 21 #include <sys/types.h> 22 #include <sys/socket.h> 23 24 #include <net/route.h> 25 #include <netinet/in.h> 26 #include <protocols/routed.h> 27 28 #include <stdio.h> 29 #include <netdb.h> 30 31 #include "trace.h" 32 #include "interface.h" 33 #include "table.h" 34 #include "af.h" 35 36 /* 37 * When we find any interfaces marked down we rescan the 38 * kernel every CHECK_INTERVAL seconds to see if they've 39 * come up. 40 */ 41 #define CHECK_INTERVAL (1*60) 42 43 #define equal(a1, a2) \ 44 (bcmp((caddr_t)(a1), (caddr_t)(a2), sizeof (struct sockaddr)) == 0) 45 #define min(a,b) ((a)>(b)?(b):(a)) 46 47 struct sockaddr_in addr; /* address of daemon's socket */ 48 49 int s; /* source and sink of all data */ 50 int kmem; 51 int supplier; /* process should supply updates */ 52 int install; /* if 1 call kernel */ 53 int lookforinterfaces; /* if 1 probe kernel for new up interfaces */ 54 int performnlist; /* if 1 check if /vmunix has changed */ 55 int externalinterfaces; /* # of remote and local interfaces */ 56 int timeval; /* local idea of time */ 57 58 char packet[MAXPACKETSIZE+1]; 59 struct rip *msg; 60 61 char **argv0; 62 struct servent *sp; 63 64 extern char *sys_errlist[]; 65 extern int errno; 66 67 struct in_addr inet_makeaddr(); 68 int inet_addr(); 69 char *malloc(); 70 int exit(); 71 int sendmsg(); 72 int supply(); 73 int timer(); 74 int cleanup(); 75