The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/netatalk/at_var.h

Version: -  FREEBSD  -  FREEBSD11  -  FREEBSD10  -  FREEBSD9  -  FREEBSD92  -  FREEBSD91  -  FREEBSD90  -  FREEBSD8  -  FREEBSD82  -  FREEBSD81  -  FREEBSD80  -  FREEBSD7  -  FREEBSD74  -  FREEBSD73  -  FREEBSD72  -  FREEBSD71  -  FREEBSD70  -  FREEBSD6  -  FREEBSD64  -  FREEBSD63  -  FREEBSD62  -  FREEBSD61  -  FREEBSD60  -  FREEBSD5  -  FREEBSD55  -  FREEBSD54  -  FREEBSD53  -  FREEBSD52  -  FREEBSD51  -  FREEBSD50  -  FREEBSD4  -  FREEBSD3  -  FREEBSD22  -  linux-2.6  -  linux-2.4.22  -  MK83  -  MK84  -  PLAN9  -  DFBSD  -  NETBSD  -  NETBSD5  -  NETBSD4  -  NETBSD3  -  NETBSD20  -  OPENBSD  -  xnu-517  -  xnu-792  -  xnu-792.6.70  -  xnu-1228  -  xnu-1456.1.26  -  xnu-1699.24.8  -  xnu-2050.18.24  -  OPENSOLARIS  -  minix-3-1-1 
SearchContext: -  none  -  3  -  10 

    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: stable/9/sys/netatalk/at_var.h 194913 2009-06-24 21:36:09Z rwatson $
   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         TAILQ_ENTRY(at_ifaddr)   aa_link;
   44 };
   45 #define aa_ifp          aa_ifa.ifa_ifp
   46 #define aa_dstaddr      aa_broadaddr;
   47 
   48 TAILQ_HEAD(at_ifaddrhead, at_ifaddr);
   49 
   50 struct at_aliasreq {
   51         char                    ifra_name[IFNAMSIZ];
   52         struct sockaddr_at      ifra_addr;
   53         struct sockaddr_at      ifra_broadaddr;
   54         struct sockaddr_at      ifra_mask;
   55 };
   56 #define ifra_dstaddr    ifra_broadaddr
   57 
   58 #define AA_SAT(aa)      (&(aa->aa_addr))
   59 #define satosat(sa)     ((struct sockaddr_at *)(sa))
   60 
   61 #define AFA_ROUTE       0x0001
   62 #define AFA_PROBING     0x0002
   63 #define AFA_PHASE2      0x0004
   64 
   65 #ifdef _KERNEL
   66 extern struct rwlock            at_ifaddr_rw;
   67 extern struct at_ifaddrhead     at_ifaddrhead;
   68 
   69 #define AT_IFADDR_LOCK_INIT()   rw_init(&at_ifaddr_rw, "at_ifaddr_rw")
   70 #define AT_IFADDR_LOCK_ASSERT() rw_assert(&at_ifaddr_rw, RA_LOCKED)
   71 #define AT_IFADDR_RLOCK()       rw_rlock(&at_ifaddr_rw)
   72 #define AT_IFADDR_RUNLOCK()     rw_runlock(&at_ifaddr_rw)
   73 #define AT_IFADDR_WLOCK()       rw_wlock(&at_ifaddr_rw)
   74 #define AT_IFADDR_WUNLOCK()     rw_wunlock(&at_ifaddr_rw)
   75 #endif
   76 
   77 #endif /* _NETATALK_AT_VAR_H_ */

Cache object: 63879a2305f68cadff3df1c2497155de


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.