diff options
Diffstat (limited to 'net/x25/x25_dev.c')
| -rw-r--r-- | net/x25/x25_dev.c | 36 | 
1 files changed, 20 insertions, 16 deletions
diff --git a/net/x25/x25_dev.c b/net/x25/x25_dev.c index b9ef682230a..9005f6daeab 100644 --- a/net/x25/x25_dev.c +++ b/net/x25/x25_dev.c @@ -24,6 +24,7 @@  #include <net/sock.h>  #include <linux/if_arp.h>  #include <net/x25.h> +#include <net/x25device.h>  static int x25_receive_data(struct sk_buff *skb, struct x25_neigh *nb)  { @@ -115,19 +116,22 @@ int x25_lapb_receive_frame(struct sk_buff *skb, struct net_device *dev,  	}  	switch (skb->data[0]) { -		case 0x00: -			skb_pull(skb, 1); -			if (x25_receive_data(skb, nb)) { -				x25_neigh_put(nb); -				goto out; -			} -			break; -		case 0x01: -			x25_link_established(nb); -			break; -		case 0x02: -			x25_link_terminated(nb); -			break; + +	case X25_IFACE_DATA: +		skb_pull(skb, 1); +		if (x25_receive_data(skb, nb)) { +			x25_neigh_put(nb); +			goto out; +		} +		break; + +	case X25_IFACE_CONNECT: +		x25_link_established(nb); +		break; + +	case X25_IFACE_DISCONNECT: +		x25_link_terminated(nb); +		break;  	}  	x25_neigh_put(nb);  drop: @@ -148,7 +152,7 @@ void x25_establish_link(struct x25_neigh *nb)  				return;  			}  			ptr  = skb_put(skb, 1); -			*ptr = 0x01; +			*ptr = X25_IFACE_CONNECT;  			break;  #if defined(CONFIG_LLC) || defined(CONFIG_LLC_MODULE) @@ -184,7 +188,7 @@ void x25_terminate_link(struct x25_neigh *nb)  	}  	ptr  = skb_put(skb, 1); -	*ptr = 0x02; +	*ptr = X25_IFACE_DISCONNECT;  	skb->protocol = htons(ETH_P_X25);  	skb->dev      = nb->dev; @@ -200,7 +204,7 @@ void x25_send_frame(struct sk_buff *skb, struct x25_neigh *nb)  	switch (nb->dev->type) {  		case ARPHRD_X25:  			dptr  = skb_push(skb, 1); -			*dptr = 0x00; +			*dptr = X25_IFACE_DATA;  			break;  #if defined(CONFIG_LLC) || defined(CONFIG_LLC_MODULE)  |