patch-2.1.42 linux/net/rose/rose_link.c
Next file: linux/net/rose/rose_out.c
Previous file: linux/net/rose/rose_in.c
Back to the patch index
Back to the overall index
- Lines: 82
- Date:
Wed May 28 10:49:12 1997
- Orig file:
v2.1.41/linux/net/rose/rose_link.c
- Orig date:
Thu Mar 27 14:40:17 1997
diff -u --recursive --new-file v2.1.41/linux/net/rose/rose_link.c linux/net/rose/rose_link.c
@@ -1,8 +1,5 @@
/*
- * Rose release 001
- *
- * This is ALPHA test software. This code may break your machine, randomly fail to work with new
- * releases, misbehave and/or generally screw up. It might even work.
+ * ROSE release 002
*
* This code REQUIRES 2.1.15 or higher/ NET3.038
*
@@ -13,7 +10,7 @@
* 2 of the License, or (at your option) any later version.
*
* History
- * Rose 001 Jonathan(G4KLX) Cloned from rose_timer.c
+ * ROSE 001 Jonathan(G4KLX) Cloned from rose_timer.c
*/
#include <linux/config.h>
@@ -62,7 +59,7 @@
}
/*
- * Rose Link Timer
+ * ROSE Link Timer
*
* This routine is called every 100ms. Decrement timer by this
* amount - if expired then process the event.
@@ -79,7 +76,8 @@
if (neigh->t0timer == 0) {
rose_transmit_restart_request(neigh);
- neigh->t0timer = sysctl_rose_restart_request_timeout;
+ neigh->dce_mode = 0;
+ neigh->t0timer = sysctl_rose_restart_request_timeout;
}
}
@@ -134,6 +132,7 @@
case ROSE_RESTART_REQUEST:
neigh->t0timer = 0;
neigh->restarted = 1;
+ neigh->dce_mode = (skb->data[3] == 0x00);
del_timer(&neigh->timer);
rose_transmit_restart_confirmation(neigh);
break;
@@ -145,11 +144,11 @@
break;
case ROSE_DIAGNOSTIC:
- printk(KERN_WARNING "rose: diagnostic #%d\n", skb->data[3]);
+ printk(KERN_WARNING "ROSE: received diagnostic #%d - %02X %02X %02X\n", skb->data[3], skb->data[4], skb->data[5], skb->data[6]);
break;
default:
- printk(KERN_WARNING "rose: received unknown %02X with LCI 000\n", frametype);
+ printk(KERN_WARNING "ROSE: received unknown %02X with LCI 000\n", frametype);
break;
}
@@ -278,8 +277,10 @@
{
unsigned char *dptr;
- if (call_fw_firewall(PF_ROSE, skb->dev, skb->data, NULL,&skb) != FW_ACCEPT)
+ if (call_fw_firewall(PF_ROSE, skb->dev, skb->data, NULL, &skb) != FW_ACCEPT) {
+ kfree_skb(skb, FREE_WRITE);
return;
+ }
if (!rose_link_up(neigh))
neigh->restarted = 0;
@@ -295,7 +296,8 @@
if (neigh->t0timer == 0) {
rose_transmit_restart_request(neigh);
- neigh->t0timer = sysctl_rose_restart_request_timeout;
+ neigh->dce_mode = 0;
+ neigh->t0timer = sysctl_rose_restart_request_timeout;
rose_link_set_timer(neigh);
}
}
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov