|
|
1.1 root 1: /*
2: * Copyright (c) 1985, 1986 Regents of the University of California.
3: * All rights reserved. The Berkeley software License Agreement
4: * specifies the terms and conditions for redistribution.
5: *
6: * @(#)in_var.h 7.1 (Berkeley) 6/5/86
7: */
8:
9: /*
10: * Interface address, Internet version. One of these structures
11: * is allocated for each interface with an Internet address.
12: * The ifaddr structure contains the protocol-independent part
13: * of the structure and is assumed to be first.
14: */
15: struct in_ifaddr {
16: struct ifaddr ia_ifa; /* protocol-independent info */
17: #define ia_addr ia_ifa.ifa_addr
18: #define ia_broadaddr ia_ifa.ifa_broadaddr
19: #define ia_dstaddr ia_ifa.ifa_dstaddr
20: #define ia_ifp ia_ifa.ifa_ifp
21: u_long ia_net; /* network number of interface */
22: u_long ia_netmask; /* mask of net part */
23: u_long ia_subnet; /* subnet number, including net */
24: u_long ia_subnetmask; /* mask of net + subnet */
25: struct in_addr ia_netbroadcast; /* broadcast addr for (logical) net */
26: int ia_flags;
27: struct in_ifaddr *ia_next; /* next in list of internet addresses */
28: };
29: /*
30: * Given a pointer to an in_ifaddr (ifaddr),
31: * return a pointer to the addr as a sockadd_in.
32: */
33: #define IA_SIN(ia) ((struct sockaddr_in *)(&((struct in_ifaddr *)ia)->ia_addr))
34: /*
35: * ia_flags
36: */
37: #define IFA_ROUTE 0x01 /* routing entry installed */
38:
39: #ifdef KERNEL
40: struct in_ifaddr *in_ifaddr;
41: struct in_ifaddr *in_iaonnetof();
42: struct ifqueue ipintrq; /* ip packet input queue */
43: #endif
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.