patch-2.1.30 linux/drivers/net/hdlcdrv.c
Next file: linux/drivers/net/lance.c
Previous file: linux/drivers/net/de4x5.c
Back to the patch index
Back to the overall index
- Lines: 69
- Date:
Thu Mar 20 17:11:51 1997
- Orig file:
v2.1.29/linux/drivers/net/hdlcdrv.c
- Orig date:
Thu Feb 27 10:57:30 1997
diff -u --recursive --new-file v2.1.29/linux/drivers/net/hdlcdrv.c linux/drivers/net/hdlcdrv.c
@@ -31,6 +31,7 @@
* 18.10.96 Changed to new user space access routines
* (copy_{to,from}_user)
* 0.2 21.11.96 various small changes
+ * 0.3 03.03.97 fixed (hopefully) IP not working with ax.25 as a module
*/
/*****************************************************************************/
@@ -50,10 +51,10 @@
#include <linux/etherdevice.h>
#include <linux/skbuff.h>
#include <linux/hdlcdrv.h>
-#ifdef CONFIG_AX25
+#if defined(CONFIG_AX25) || defined(CONFIG_AX25_MODULE)
/* prototypes for ax25_encapsulate and ax25_rebuild_header */
#include <net/ax25.h>
-#endif /* CONFIG_AX25 */
+#endif /* CONFIG_AX25 || CONFIG_AX25_MODULE */
/* make genksyms happy */
#include <linux/ip.h>
@@ -745,7 +746,19 @@
bi.data.cs.ptt = hdlcdrv_ptt(s);
bi.data.cs.dcd = s->hdlcrx.dcd;
bi.data.cs.ptt_keyed = s->ptt_keyed;
- bi.data.cs.stats = s->stats;
+ bi.data.cs.tx_packets = s->stats.tx_packets;
+ bi.data.cs.tx_errors = s->stats.tx_errors;
+ bi.data.cs.rx_packets = s->stats.rx_packets;
+ bi.data.cs.rx_errors = s->stats.rx_errors;
+ break;
+
+ case HDLCDRVCTL_OLDGETSTAT:
+ bi.data.ocs.ptt = hdlcdrv_ptt(s);
+ bi.data.ocs.dcd = s->hdlcrx.dcd;
+ bi.data.ocs.ptt_keyed = s->ptt_keyed;
+#if LINUX_VERSION_CODE < 0x20100
+ bi.data.ocs.stats = s->stats;
+#endif
break;
case HDLCDRVCTL_CALIBRATE:
@@ -858,13 +871,13 @@
skb_queue_head_init(&s->send_queue);
-#ifdef CONFIG_AX25
+#if defined(CONFIG_AX25) || defined(CONFIG_AX25_MODULE)
dev->hard_header = ax25_encapsulate;
dev->rebuild_header = ax25_rebuild_header;
-#else /* CONFIG_AX25 */
+#else /* CONFIG_AX25 || CONFIG_AX25_MODULE */
dev->hard_header = NULL;
dev->rebuild_header = NULL;
-#endif /* CONFIG_AX25 */
+#endif /* CONFIG_AX25 || CONFIG_AX25_MODULE */
dev->set_mac_address = hdlcdrv_set_mac_address;
dev->type = ARPHRD_AX25; /* AF_AX25 device */
@@ -989,8 +1002,7 @@
int init_module(void)
{
printk(KERN_INFO "hdlcdrv: (C) 1996 Thomas Sailer HB9JNX/AE4WA\n");
- printk(KERN_INFO "hdlcdrv: version 0.2 compiled %s %s\n",
- __TIME__, __DATE__);
+ printk(KERN_INFO "hdlcdrv: version 0.3 compiled " __TIME__ " " __DATE__ "\n");
#if LINUX_VERSION_CODE < 0x20115
register_symtab(&hdlcdrv_syms);
#endif
FUNET's LINUX-ADM group, [email protected]
TCL-scripts by Sam Shen, [email protected]