cpp-d1064d
[cross.git] / i686-linux-gnu-4.7 / usr / include / linux / ipx.h
diff --git a/i686-linux-gnu-4.7/usr/include/linux/ipx.h b/i686-linux-gnu-4.7/usr/include/linux/ipx.h
new file mode 100644 (file)
index 0000000..3168137
--- /dev/null
@@ -0,0 +1,87 @@
+/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
+#ifndef _IPX_H_
+#define _IPX_H_
+#include <linux/libc-compat.h> /* for compatibility with glibc netipx/ipx.h */
+#include <linux/types.h>
+#include <linux/sockios.h>
+#include <linux/socket.h>
+#define IPX_NODE_LEN   6
+#define IPX_MTU                576
+
+#if __UAPI_DEF_SOCKADDR_IPX
+struct sockaddr_ipx {
+       __kernel_sa_family_t sipx_family;
+       __be16          sipx_port;
+       __be32          sipx_network;
+       unsigned char   sipx_node[IPX_NODE_LEN];
+       __u8            sipx_type;
+       unsigned char   sipx_zero;      /* 16 byte fill */
+};
+#endif /* __UAPI_DEF_SOCKADDR_IPX */
+
+/*
+ * So we can fit the extra info for SIOCSIFADDR into the address nicely
+ */
+#define sipx_special   sipx_port
+#define sipx_action    sipx_zero
+#define IPX_DLTITF     0
+#define IPX_CRTITF     1
+
+#if __UAPI_DEF_IPX_ROUTE_DEFINITION
+struct ipx_route_definition {
+       __be32        ipx_network;
+       __be32        ipx_router_network;
+       unsigned char ipx_router_node[IPX_NODE_LEN];
+};
+#endif /* __UAPI_DEF_IPX_ROUTE_DEFINITION */
+
+#if __UAPI_DEF_IPX_INTERFACE_DEFINITION
+struct ipx_interface_definition {
+       __be32        ipx_network;
+       unsigned char ipx_device[16];
+       unsigned char ipx_dlink_type;
+#define IPX_FRAME_NONE         0
+#define IPX_FRAME_SNAP         1
+#define IPX_FRAME_8022         2
+#define IPX_FRAME_ETHERII      3
+#define IPX_FRAME_8023         4
+#define IPX_FRAME_TR_8022       5 /* obsolete */
+       unsigned char ipx_special;
+#define IPX_SPECIAL_NONE       0
+#define IPX_PRIMARY            1
+#define IPX_INTERNAL           2
+       unsigned char ipx_node[IPX_NODE_LEN];
+};
+#endif /* __UAPI_DEF_IPX_INTERFACE_DEFINITION */
+
+#if __UAPI_DEF_IPX_CONFIG_DATA
+struct ipx_config_data {
+       unsigned char   ipxcfg_auto_select_primary;
+       unsigned char   ipxcfg_auto_create_interfaces;
+};
+#endif /* __UAPI_DEF_IPX_CONFIG_DATA */
+
+/*
+ * OLD Route Definition for backward compatibility.
+ */
+
+#if __UAPI_DEF_IPX_ROUTE_DEF
+struct ipx_route_def {
+       __be32          ipx_network;
+       __be32          ipx_router_network;
+#define IPX_ROUTE_NO_ROUTER    0
+       unsigned char   ipx_router_node[IPX_NODE_LEN];
+       unsigned char   ipx_device[16];
+       unsigned short  ipx_flags;
+#define IPX_RT_SNAP            8
+#define IPX_RT_8022            4
+#define IPX_RT_BLUEBOOK                2
+#define IPX_RT_ROUTED          1
+};
+#endif /* __UAPI_DEF_IPX_ROUTE_DEF */
+
+#define SIOCAIPXITFCRT         (SIOCPROTOPRIVATE)
+#define SIOCAIPXPRISLT         (SIOCPROTOPRIVATE + 1)
+#define SIOCIPXCFGDATA         (SIOCPROTOPRIVATE + 2)
+#define SIOCIPXNCPCONN         (SIOCPROTOPRIVATE + 3)
+#endif /* _IPX_H_ */