~ubuntu-branches/ubuntu/precise/netatalk/precise

« back to all changes in this revision

Viewing changes to sys/netatalk/aarp.h

  • Committer: Bazaar Package Importer
  • Author(s): Sebastian Rittau
  • Date: 2004-01-19 12:43:49 UTC
  • Revision ID: james.westby@ubuntu.com-20040119124349-es563jbp0hk0ae51
Tags: upstream-1.6.4
ImportĀ upstreamĀ versionĀ 1.6.4

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * $Id: aarp.h,v 1.2 2001/06/29 14:14:47 rufustfirefly Exp $
 
3
 *
 
4
 * Copyright (c) 1990,1991 Regents of The University of Michigan.
 
5
 * All Rights Reserved.
 
6
 *
 
7
 * This structure is used for both phase 1 and 2. Under phase 1
 
8
 * the net is not filled in. It is in phase 2. In both cases, the
 
9
 * hardware address length is (for some unknown reason) 4. If
 
10
 * anyone at Apple could program their way out of paper bag, it
 
11
 * would be 1 and 3 respectively for phase 1 and 2.
 
12
 */
 
13
 
 
14
#ifndef _AARP_H
 
15
#define _AARP_H 1
 
16
 
 
17
union aapa {
 
18
    u_char              ap_pa[4];
 
19
    struct ap_node {
 
20
        u_char          an_zero;
 
21
        u_char          an_net[2];
 
22
        u_char          an_node;
 
23
    } ap_node;
 
24
};
 
25
 
 
26
struct ether_aarp {
 
27
    struct arphdr       eaa_hdr;
 
28
    u_char              aarp_sha[6];
 
29
    union aapa          aarp_spu;
 
30
    u_char              aarp_tha[6];
 
31
    union aapa          aarp_tpu;
 
32
};
 
33
#define aarp_hrd        eaa_hdr.ar_hrd
 
34
#define aarp_pro        eaa_hdr.ar_pro
 
35
#define aarp_hln        eaa_hdr.ar_hln
 
36
#define aarp_pln        eaa_hdr.ar_pln
 
37
#define aarp_op         eaa_hdr.ar_op
 
38
#define aarp_spa        aarp_spu.ap_node.an_node
 
39
#define aarp_tpa        aarp_tpu.ap_node.an_node
 
40
#define aarp_spnet      aarp_spu.ap_node.an_net
 
41
#define aarp_tpnet      aarp_tpu.ap_node.an_net
 
42
#define aarp_spnode     aarp_spu.ap_node.an_node
 
43
#define aarp_tpnode     aarp_tpu.ap_node.an_node
 
44
 
 
45
struct aarptab {
 
46
    struct at_addr      aat_ataddr;
 
47
    u_char              aat_enaddr[ 6 ];
 
48
    u_char              aat_timer;
 
49
    u_char              aat_flags;
 
50
    struct mbuf         *aat_hold;
 
51
};
 
52
 
 
53
#define AARPHRD_ETHER   0x0001
 
54
 
 
55
#define AARPOP_REQUEST  0x01
 
56
#define AARPOP_RESPONSE 0x02
 
57
#define AARPOP_PROBE    0x03
 
58
 
 
59
#ifdef KERNEL
 
60
struct aarptab          *aarptnew();
 
61
int                     aarpprobe();
 
62
#endif /* KERNEL */
 
63
 
 
64
#endif /* _AARP_H */