diff options
author | Ralf Baechle <ralf@linux-mips.org> | 1998-08-25 09:12:35 +0000 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 1998-08-25 09:12:35 +0000 |
commit | c7fc24dc4420057f103afe8fc64524ebc25c5d37 (patch) | |
tree | 3682407a599b8f9f03fc096298134cafba1c9b2f /net/wanrouter/wanmain.c | |
parent | 1d793fade8b063fde3cf275bf1a5c2d381292cd9 (diff) |
o Merge with Linux 2.1.116.
o New Newport console code.
o New G364 console code.
Diffstat (limited to 'net/wanrouter/wanmain.c')
-rw-r--r-- | net/wanrouter/wanmain.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/net/wanrouter/wanmain.c b/net/wanrouter/wanmain.c index b00d0ab2a..fabe85161 100644 --- a/net/wanrouter/wanmain.c +++ b/net/wanrouter/wanmain.c @@ -5,7 +5,7 @@ * the following common services for the WAN Link Drivers: * o WAN device managenment (registering, unregistering) * o Network interface management -* o Physical connection management (dial-up, incomming calls) +* o Physical connection management (dial-up, incoming calls) * o Logical connection management (switched virtual circuits) * o Protocol encapsulation/decapsulation * @@ -24,6 +24,8 @@ * Jun 27, 1997 Alan Cox realigned with vendor code * Oct 15, 1997 Farhan Thawar changed wan_encapsulate to add a pad byte of 0 * Apr 20, 1998 Alan Cox Fixed 2.1 symbols +* May 17, 1998 K. Baranowski Fixed SNAP encapsulation in wan_encapsulate +* Aug 15, 1998 Arnaldo C. Melo Fixed device_setup return value *****************************************************************************/ #include <linux/stddef.h> /* offsetof(), etc. */ @@ -288,11 +290,11 @@ int wanrouter_encapsulate (struct sk_buff* skb, struct device* dev) case ETH_P_IPX: /* SNAP encapsulation */ case ETH_P_ARP: hdr_len += 7; - skb_push(skb, 6); + skb_push(skb, 7); skb->data[0] = 0; skb->data[1] = NLPID_SNAP; - memcpy(&skb->data[1], oui_ether, sizeof(oui_ether)); - *((unsigned short*)&skb->data[4]) = htons(skb->protocol); + memcpy(&skb->data[2], oui_ether, sizeof(oui_ether)); + *((unsigned short*)&skb->data[5]) = htons(skb->protocol); break; default: /* Unknown packet type */ @@ -465,7 +467,7 @@ static int device_setup (wan_device_t* wandev, wandev_conf_t* u_conf) if(!copy_from_user(data, conf->data, conf->data_size)) { conf->data=data; - wandev->setup(wandev,conf); + err = wandev->setup(wandev,conf); } else err = -ENOBUFS; |