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