Merge master.kernel.org:/pub/scm/linux/kernel/git/acme/net-2.6
[linux-2.6] / include / linux / atmarp.h
1 /* atmarp.h - ATM ARP protocol and kernel-demon interface definitions */
2  
3 /* Written 1995-1999 by Werner Almesberger, EPFL LRC/ICA */
4  
5
6 #ifndef _LINUX_ATMARP_H
7 #define _LINUX_ATMARP_H
8
9 #ifdef __KERNEL__
10 #include <linux/types.h>
11 #endif
12 #include <linux/atmapi.h>
13 #include <linux/atmioc.h>
14
15
16 #define ATMARP_RETRY_DELAY 30           /* request next resolution or forget
17                                            NAK after 30 sec - should go into
18                                            atmclip.h */
19 #define ATMARP_MAX_UNRES_PACKETS 5      /* queue that many packets while
20                                            waiting for the resolver */
21
22
23 #define ATMARPD_CTRL    _IO('a',ATMIOC_CLIP+1)  /* become atmarpd ctrl sock */
24 #define ATMARP_MKIP     _IO('a',ATMIOC_CLIP+2)  /* attach socket to IP */
25 #define ATMARP_SETENTRY _IO('a',ATMIOC_CLIP+3)  /* fill or hide ARP entry */
26 #define ATMARP_ENCAP    _IO('a',ATMIOC_CLIP+5)  /* change encapsulation */
27
28
29 enum atmarp_ctrl_type {
30         act_invalid,            /* catch uninitialized structures */
31         act_need,               /* need address resolution */
32         act_up,                 /* interface is coming up */
33         act_down,               /* interface is going down */
34         act_change              /* interface configuration has changed */
35 };
36
37 struct atmarp_ctrl {
38         enum atmarp_ctrl_type   type;   /* message type */
39         int                     itf_num;/* interface number (if present) */
40         uint32_t                ip;     /* IP address (act_need only) */
41 };
42
43 #endif