[BACK]Return to at.h CVS log [TXT][DIR] Up to [local] / sys / netatalk

Annotation of sys/netatalk/at.h, Revision 1.1

1.1     ! nbrk        1: /*     $OpenBSD: at.h,v 1.3 2003/05/14 02:02:55 itojun Exp $   */
        !             2:
        !             3: /*
        !             4:  * Copyright (c) 1990,1991 Regents of The University of Michigan.
        !             5:  * All Rights Reserved.
        !             6:  *
        !             7:  * Permission to use, copy, modify, and distribute this software and
        !             8:  * its documentation for any purpose and without fee is hereby granted,
        !             9:  * provided that the above copyright notice appears in all copies and
        !            10:  * that both that copyright notice and this permission notice appear
        !            11:  * in supporting documentation, and that the name of The University
        !            12:  * of Michigan not be used in advertising or publicity pertaining to
        !            13:  * distribution of the software without specific, written prior
        !            14:  * permission. This software is supplied as is without expressed or
        !            15:  * implied warranties of any kind.
        !            16:  *
        !            17:  *     Research Systems Unix Group
        !            18:  *     The University of Michigan
        !            19:  *     c/o Mike Clark
        !            20:  *     535 W. William Street
        !            21:  *     Ann Arbor, Michigan
        !            22:  *     +1-313-763-0525
        !            23:  *     netatalk@itd.umich.edu
        !            24:  */
        !            25:
        !            26: /*
        !            27:  * The following is the contents of the COPYRIGHT file from the
        !            28:  * netatalk-1.4a2 distribution, from which this file is derived.
        !            29:  */
        !            30: /*
        !            31:  * Copyright (c) 1990,1996 Regents of The University of Michigan.
        !            32:  *
        !            33:  * All Rights Reserved.
        !            34:  *
        !            35:  *    Permission to use, copy, modify, and distribute this software and
        !            36:  *    its documentation for any purpose and without fee is hereby granted,
        !            37:  *    provided that the above copyright notice appears in all copies and
        !            38:  *    that both that copyright notice and this permission notice appear
        !            39:  *    in supporting documentation, and that the name of The University
        !            40:  *    of Michigan not be used in advertising or publicity pertaining to
        !            41:  *    distribution of the software without specific, written prior
        !            42:  *    permission. This software is supplied as is without expressed or
        !            43:  *    implied warranties of any kind.
        !            44:  *
        !            45:  * This product includes software developed by the University of
        !            46:  * California, Berkeley and its contributors.
        !            47:  *
        !            48:  * Solaris code is encumbered by the following:
        !            49:  *
        !            50:  *     Copyright (C) 1996 by Sun Microsystems Computer Co.
        !            51:  *
        !            52:  *     Permission to use, copy, modify, and distribute this software and
        !            53:  *     its documentation for any purpose and without fee is hereby
        !            54:  *     granted, provided that the above copyright notice appear in all
        !            55:  *     copies and that both that copyright notice and this permission
        !            56:  *     notice appear in supporting documentation.  This software is
        !            57:  *     provided "as is" without express or implied warranty.
        !            58:  *
        !            59:  * Research Systems Unix Group
        !            60:  * The University of Michigan
        !            61:  * c/o Wesley Craig
        !            62:  * 535 W. William Street
        !            63:  * Ann Arbor, Michigan
        !            64:  * +1-313-764-2278
        !            65:  * netatalk@umich.edu
        !            66:  */
        !            67: /*
        !            68:  * None of the Solaris code mentioned is included in OpenBSD.
        !            69:  * This code also relies heavily on previous effort in FreeBSD and NetBSD.
        !            70:  */
        !            71:
        !            72: #ifndef __AT_HEADER__
        !            73: #define __AT_HEADER__
        !            74: /*
        !            75:  * Supported protocols
        !            76:  */
        !            77: #define ATPROTO_DDP    0
        !            78: #define ATPROTO_AARP   254
        !            79:
        !            80: #include <net/ethertypes.h>
        !            81:
        !            82: #define DDP_MAXSZ      587
        !            83:
        !            84: #define        AT_LLC_SIZE     8
        !            85:
        !            86: /*
        !            87:  * If ATPORT_FIRST <= Port < ATPORT_RESERVED,
        !            88:  * Port was created by a privileged process.
        !            89:  * If ATPORT_RESERVED <= Port < ATPORT_LAST,
        !            90:  * Port was not necessarily created by a
        !            91:  * privileged process.
        !            92:  */
        !            93: #define ATPORT_FIRST   1
        !            94: #define ATPORT_RESERVED        128
        !            95: #define ATPORT_LAST    255
        !            96:
        !            97: /*
        !            98:  * AppleTalk address.
        !            99:  */
        !           100: struct at_addr {
        !           101:     u_int16_t  s_net;
        !           102:     u_int8_t   s_node;
        !           103: };
        !           104:
        !           105: #define ATADDR_ANYNET  (u_int16_t)0x0000
        !           106: #define ATADDR_ANYNODE (u_int8_t)0x00
        !           107: #define ATADDR_ANYPORT (u_int8_t)0x00
        !           108: #define ATADDR_BCAST   (u_int8_t)0xff          /* There is no BCAST for NET */
        !           109:
        !           110: struct netrange {
        !           111:        u_int8_t        nr_phase;
        !           112:        u_int16_t       nr_firstnet;
        !           113:        u_int16_t       nr_lastnet;
        !           114: };
        !           115:
        !           116: /*
        !           117:  * Socket address, AppleTalk style.  We keep magic information in the
        !           118:  * zero bytes.  There are three types, NONE, CONFIG which has the phase
        !           119:  * and a net range, and IFACE which has the network address of an
        !           120:  * interface.  IFACE may be filled in by the client, and is filled in
        !           121:  * by the kernel.
        !           122:  */
        !           123: struct sockaddr_at {
        !           124:     u_int8_t           sat_len;
        !           125:     u_int8_t           sat_family;
        !           126:     u_int8_t           sat_port;
        !           127:     struct at_addr     sat_addr;
        !           128:     union {
        !           129:        struct netrange r_netrange;
        !           130:        int8_t          r_zero[ 8 ];    /* Hide a struct netrange in here */
        !           131:     } sat_range;
        !           132: };
        !           133:
        !           134: #define        sat_zero        sat_range.r_zero
        !           135:
        !           136: #ifdef _KERNEL
        !           137: extern struct domain   atalkdomain;
        !           138: extern struct protosw  atalksw[];
        !           139: #endif
        !           140:
        !           141: #endif /* __AT_HEADER__ */

CVSweb