summaryrefslogtreecommitdiff
path: root/include/arch/x86_64/linux/atmarp.h
diff options
context:
space:
mode:
authorKacper <kacper@mail.openlinux.dev>2025-12-07 20:10:31 +0100
committerKacper <kacper@mail.openlinux.dev>2025-12-07 20:10:31 +0100
commitfc00c656c96528112d05cf0edf8631bd5eaea446 (patch)
treea6e0e6c588191a8bd1c64afc3b7a258e3e66c236 /include/arch/x86_64/linux/atmarp.h
Add build system scaffolding and libc headers
Diffstat (limited to 'include/arch/x86_64/linux/atmarp.h')
-rw-r--r--include/arch/x86_64/linux/atmarp.h40
1 files changed, 40 insertions, 0 deletions
diff --git a/include/arch/x86_64/linux/atmarp.h b/include/arch/x86_64/linux/atmarp.h
new file mode 100644
index 00000000..da6f93c2
--- /dev/null
+++ b/include/arch/x86_64/linux/atmarp.h
@@ -0,0 +1,40 @@
+/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
+/* atmarp.h - ATM ARP protocol and kernel-demon interface definitions */
+
+/* Written 1995-1999 by Werner Almesberger, EPFL LRC/ICA */
+
+#ifndef _LINUX_ATMARP_H
+#define _LINUX_ATMARP_H
+
+#include <linux/types.h>
+#include <linux/atmapi.h>
+#include <linux/atmioc.h>
+
+#define ATMARP_RETRY_DELAY \
+ 30 /* request next resolution or forget \
+ NAK after 30 sec - should go into \
+ atmclip.h */
+#define ATMARP_MAX_UNRES_PACKETS \
+ 5 /* queue that many packets while \
+ waiting for the resolver */
+
+#define ATMARPD_CTRL _IO('a', ATMIOC_CLIP + 1) /* become atmarpd ctrl sock */
+#define ATMARP_MKIP _IO('a', ATMIOC_CLIP + 2) /* attach socket to IP */
+#define ATMARP_SETENTRY _IO('a', ATMIOC_CLIP + 3) /* fill or hide ARP entry */
+#define ATMARP_ENCAP _IO('a', ATMIOC_CLIP + 5) /* change encapsulation */
+
+enum atmarp_ctrl_type {
+ act_invalid, /* catch uninitialized structures */
+ act_need, /* need address resolution */
+ act_up, /* interface is coming up */
+ act_down, /* interface is going down */
+ act_change /* interface configuration has changed */
+};
+
+struct atmarp_ctrl {
+ enum atmarp_ctrl_type type; /* message type */
+ int itf_num; /* interface number (if present) */
+ __be32 ip; /* IP address (act_need only) */
+};
+
+#endif