|
|
1.1 ! root 1: /* ! 2: * Copyright (c) 1983, 1988 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.5 (Berkeley) 5/31/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: char *ctime(); ! 71: int exit(); ! 72: int sendmsg(); ! 73: int supply(); ! 74: int timer(); ! 75: int cleanup();
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.