]> CyberLeo.Net >> Repos - FreeBSD/releng/7.2.git/blob - sys/netatalk/at_var.h
Create releng/7.2 from stable/7 in preparation for 7.2-RELEASE.
[FreeBSD/releng/7.2.git] / sys / netatalk / at_var.h
1 /*-
2  * Copyright (c) 1990, 1991 Regents of The University of Michigan.
3  * All Rights Reserved.
4  *
5  * Permission to use, copy, modify, and distribute this software and
6  * its documentation for any purpose and without fee is hereby granted,
7  * provided that the above copyright notice appears in all copies and
8  * that both that copyright notice and this permission notice appear
9  * in supporting documentation, and that the name of The University
10  * of Michigan not be used in advertising or publicity pertaining to
11  * distribution of the software without specific, written prior
12  * permission. This software is supplied as is without expressed or
13  * implied warranties of any kind.
14  *
15  *      Research Systems Unix Group
16  *      The University of Michigan
17  *      c/o Mike Clark
18  *      535 W. William Street
19  *      Ann Arbor, Michigan
20  *      +1-313-763-0525
21  *      netatalk@itd.umich.edu
22  *
23  * $FreeBSD$
24  */
25
26 #ifndef _NETATALK_AT_VAR_H_
27 #define _NETATALK_AT_VAR_H_
28
29 /*
30  * For phase2, we need to keep not only our address on an interface, but also
31  * the legal networks on the interface.
32  */
33 struct at_ifaddr {
34         struct ifaddr            aa_ifa;
35         struct sockaddr_at       aa_addr;
36         struct sockaddr_at       aa_broadaddr;
37         struct sockaddr_at       aa_netmask;
38         int                      aa_flags;
39         u_short                  aa_firstnet;
40         u_short                  aa_lastnet;
41         int                      aa_probcnt;
42         struct callout           aa_callout;
43         struct at_ifaddr        *aa_next;
44 };
45 #define aa_ifp          aa_ifa.ifa_ifp
46 #define aa_dstaddr      aa_broadaddr;
47
48 struct at_aliasreq {
49         char                    ifra_name[IFNAMSIZ];
50         struct sockaddr_at      ifra_addr;
51         struct sockaddr_at      ifra_broadaddr;
52         struct sockaddr_at      ifra_mask;
53 };
54 #define ifra_dstaddr    ifra_broadaddr
55
56 #define AA_SAT(aa)      (&(aa->aa_addr))
57 #define satosat(sa)     ((struct sockaddr_at *)(sa))
58
59 #define AFA_ROUTE       0x0001
60 #define AFA_PROBING     0x0002
61 #define AFA_PHASE2      0x0004
62
63 #ifdef _KERNEL
64 extern struct at_ifaddr *at_ifaddr_list;
65 #endif
66
67 #endif /* _NETATALK_AT_VAR_H_ */