summaryrefslogtreecommitdiffstats
path: root/include/linux/ax25.h
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>2015-06-24 04:23:46 +0200
committerRalf Baechle <ralf@linux-mips.org>2015-06-24 10:03:18 +0200
commite5067d7cd967cb17067de24a162306b79f432b20 (patch)
tree541f101762df32a5742bec354009986a96d8e564 /include/linux/ax25.h
parent86a981e836404006efc35881ebf3d5ae36925e82 (diff)
Import newax25-2.4.3.patch.1.bz2HEADnewax25-2.4.3-1
And cleanup the *.orig and *.rej files and whitespace errors that are part of the original patch. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'include/linux/ax25.h')
-rw-r--r--include/linux/ax25.h72
1 files changed, 64 insertions, 8 deletions
diff --git a/include/linux/ax25.h b/include/linux/ax25.h
index 9191445bb..f316c9960 100644
--- a/include/linux/ax25.h
+++ b/include/linux/ax25.h
@@ -6,8 +6,10 @@
#ifndef AX25_KERNEL_H
#define AX25_KERNEL_H
+#define AX25_NEW_DEVIF 1
+
#define AX25_MTU 256
-#define AX25_MAX_DIGIS 8
+#define AX25_MAX_DIGIS 8
#define AX25_WINDOW 1
#define AX25_T1 2
@@ -35,6 +37,9 @@
#define SIOCAX25DEVCTL (SIOCPROTOPRIVATE+12)
#define SIOCAX25GETINFO (SIOCPROTOPRIVATE+13)
+#define AX25_SET_DEV_BITRATE 0
+#define AX25_SET_DEV_MODE 1
+
#define AX25_SET_RT_IPMODE 2
#define AX25_NOUID_DEFAULT 0
@@ -58,6 +63,59 @@ struct full_sockaddr_ax25 {
ax25_address fsa_digipeater[AX25_MAX_DIGIS];
};
+#define fsax25_family fsa_ax25.sax25_family
+#define fsax25_call fsa_ax25.sax25_call
+#define fsax25_ndigis fsa_ax25.sax25_ndigis
+
+typedef struct {
+ ax25_address addr;
+ ax25_address digipeater[AX25_MAX_DIGIS];;
+ unsigned char dcount;
+} ax25_path_t;
+
+typedef struct {
+ ax25_address dest;
+ ax25_address src;
+ ax25_address digipeater[AX25_MAX_DIGIS];
+ unsigned char dcount;
+ char lastrepeat;
+} ax25_addr_t;
+
+struct ax25_rtmsg {
+ char port_name[32];
+ unsigned int mode;
+ ax25_addr_t addr;
+};
+
+struct ax25_armsg {
+ char port_name[32];
+ unsigned int ip_addr;
+ ax25_address ax_addr;
+};
+
+struct ax25_pathmsg {
+ char port_name[32];
+ unsigned int mode;
+ ax25_path_t path;
+};
+
+struct ax25_nlmsg {
+
+#define AX25_MSG_RTINFO 0
+#define AX25_MSG_ARINFO 1
+#define AX25_MSG_SETRT 2
+#define AX25_MSG_DELRT 3
+#define AX25_MSG_OPTRT 4
+ unsigned int msg_type;
+
+ union {
+ unsigned char raw[128-sizeof(unsigned int)];
+ struct ax25_rtmsg rtmsg;
+ struct ax25_armsg armsg;
+ struct ax25_pathmsg pathmsg;
+ } msg;
+};
+
struct ax25_routes_struct {
ax25_address port_addr;
ax25_address dest_addr;
@@ -73,13 +131,11 @@ struct ax25_route_opt_struct {
};
struct ax25_ctl_struct {
- ax25_address port_addr;
- ax25_address source_addr;
- ax25_address dest_addr;
- unsigned int cmd;
- unsigned long arg;
- unsigned char digi_count;
- ax25_address digi_addr[AX25_MAX_DIGIS];
+ ax25_address port_addr;
+ ax25_address source_addr;
+ ax25_address dest_addr;
+ unsigned int cmd;
+ unsigned long arg;
};
/* this will go away. Please do not export to user land */