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.h

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
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: releng/5.4/sys/netatalk/at.h 141090 2005-01-31 23:27:04Z imp $
   24  */
   25 
   26 #ifndef __AT_HEADER__
   27 #define __AT_HEADER__
   28 /*
   29  * Supported protocols
   30  */
   31 #define ATPROTO_DDP     0
   32 #define ATPROTO_AARP    254
   33 
   34 #define DDP_MAXSZ       587
   35 
   36 /*
   37  * If ATPORT_FIRST <= Port < ATPORT_RESERVED,
   38  * Port was created by a privileged process.
   39  * If ATPORT_RESERVED <= Port < ATPORT_LAST,
   40  * Port was not necessarily created by a
   41  * privileged process.
   42  */
   43 #define ATPORT_FIRST    1
   44 #define ATPORT_RESERVED 128
   45 #define ATPORT_LAST     255
   46 
   47 /*
   48  * AppleTalk address.
   49  */
   50 struct at_addr {
   51     u_short     s_net;
   52     u_char      s_node;
   53 };
   54 
   55 #define ATADDR_ANYNET   (u_short)0x0000
   56 #define ATADDR_ANYNODE  (u_char)0x00
   57 #define ATADDR_ANYPORT  (u_char)0x00
   58 #define ATADDR_BCAST    (u_char)0xff            /* There is no BCAST for NET */
   59 
   60 struct netrange {
   61     u_char              nr_phase;
   62     u_short             nr_firstnet;
   63     u_short             nr_lastnet;
   64 };
   65 
   66 /*
   67  * Socket address, AppleTalk style.  We keep magic information in the 
   68  * zero bytes.  There are three types, NONE, CONFIG which has the phase
   69  * and a net range, and IFACE which has the network address of an
   70  * interface.  IFACE may be filled in by the client, and is filled in
   71  * by the kernel.
   72  */
   73 struct sockaddr_at {
   74     u_char              sat_len;
   75     u_char              sat_family;
   76     u_char              sat_port;
   77     struct at_addr      sat_addr;
   78     union {
   79         struct netrange r_netrange;
   80         char            r_zero[ 8 ];    /* Hide a struct netrange in here */
   81     } sat_range;
   82 };
   83 
   84 #define sat_zero sat_range.r_zero
   85 
   86 #endif /* !__AT_HEADER__ */

Cache object: 94f6ed7f64ebd3c29a4707f31c5a3805


[ 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.