diff options
author | Stephen Hemminger <stephen@networkplumber.org> | 2017-11-14 08:37:14 -0800 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2017-11-28 13:55:00 +0100 |
commit | e02554e9a4338c58e75fdfb0ef908a5adc86cba5 (patch) | |
tree | c9b2029a35a8ee2583b8ba9c6df783b72c14ae44 /drivers/staging/ipx/pe2.c | |
parent | da1725ca4869461890d5fd1be5202ff691c05f78 (diff) | |
download | linux-stable-e02554e9a4338c58e75fdfb0ef908a5adc86cba5.tar.gz linux-stable-e02554e9a4338c58e75fdfb0ef908a5adc86cba5.tar.bz2 linux-stable-e02554e9a4338c58e75fdfb0ef908a5adc86cba5.zip |
ipx: move Novell IPX protocol support into staging
The Netware IPX protocol is very old and no one should still be using
it. It is time to move it into staging for a while and eventually
decommision it.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/ipx/pe2.c')
-rw-r--r-- | drivers/staging/ipx/pe2.c | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/drivers/staging/ipx/pe2.c b/drivers/staging/ipx/pe2.c new file mode 100644 index 000000000000..ba7d4214bbff --- /dev/null +++ b/drivers/staging/ipx/pe2.c @@ -0,0 +1,36 @@ +// SPDX-License-Identifier: GPL-2.0 +#include <linux/in.h> +#include <linux/mm.h> +#include <linux/module.h> +#include <linux/netdevice.h> +#include <linux/skbuff.h> +#include <linux/slab.h> + +#include <net/datalink.h> + +static int pEII_request(struct datalink_proto *dl, + struct sk_buff *skb, unsigned char *dest_node) +{ + struct net_device *dev = skb->dev; + + skb->protocol = htons(ETH_P_IPX); + dev_hard_header(skb, dev, ETH_P_IPX, dest_node, NULL, skb->len); + return dev_queue_xmit(skb); +} + +struct datalink_proto *make_EII_client(void) +{ + struct datalink_proto *proto = kmalloc(sizeof(*proto), GFP_ATOMIC); + + if (proto) { + proto->header_length = 0; + proto->request = pEII_request; + } + + return proto; +} + +void destroy_EII_client(struct datalink_proto *dl) +{ + kfree(dl); +} |