linux/drivers/net/wan/hdlc.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * Generic HDLC support routines for Linux
 *
 * Copyright (C) 1999 - 2008 Krzysztof Halasa <[email protected]>
 *
 * Currently supported:
 *	* raw IP-in-HDLC
 *	* Cisco HDLC
 *	* Frame Relay with ANSI or CCITT LMI (both user and network side)
 *	* PPP
 *	* X.25
 *
 * Use sethdlc utility to set line parameters, protocol and PVCs
 *
 * How does it work:
 * - proto->open(), close(), start(), stop() calls are serialized.
 *   The order is: open, [ start, stop ... ] close ...
 * - proto->start() and stop() are called with spin_lock_irq held.
 */

#define pr_fmt(fmt)

#include <linux/errno.h>
#include <linux/hdlc.h>
#include <linux/if_arp.h>
#include <linux/inetdevice.h>
#include <linux/init.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/notifier.h>
#include <linux/pkt_sched.h>
#include <linux/poll.h>
#include <linux/rtnetlink.h>
#include <linux/skbuff.h>
#include <linux/slab.h>
#include <net/net_namespace.h>

static const char *version =;

#undef DEBUG_LINK

static struct hdlc_proto *first_proto;

static int hdlc_rcv(struct sk_buff *skb, struct net_device *dev,
		    struct packet_type *p, struct net_device *orig_dev)
{}

netdev_tx_t hdlc_start_xmit(struct sk_buff *skb, struct net_device *dev)
{}
EXPORT_SYMBOL();

static inline void hdlc_proto_start(struct net_device *dev)
{}

static inline void hdlc_proto_stop(struct net_device *dev)
{}

static int hdlc_device_event(struct notifier_block *this, unsigned long event,
			     void *ptr)
{}

/* Must be called by hardware driver when HDLC device is being opened */
int hdlc_open(struct net_device *dev)
{}
EXPORT_SYMBOL();

/* Must be called by hardware driver when HDLC device is being closed */
void hdlc_close(struct net_device *dev)
{}
EXPORT_SYMBOL();

int hdlc_ioctl(struct net_device *dev, struct if_settings *ifs)
{}
EXPORT_SYMBOL();

static const struct header_ops hdlc_null_ops;

static void hdlc_setup_dev(struct net_device *dev)
{}

static void hdlc_setup(struct net_device *dev)
{}

struct net_device *alloc_hdlcdev(void *priv)
{}
EXPORT_SYMBOL();

void unregister_hdlc_device(struct net_device *dev)
{}
EXPORT_SYMBOL();

int attach_hdlc_protocol(struct net_device *dev, struct hdlc_proto *proto,
			 size_t size)
{}
EXPORT_SYMBOL();

int detach_hdlc_protocol(struct net_device *dev)
{}
EXPORT_SYMBOL();

void register_hdlc_protocol(struct hdlc_proto *proto)
{}
EXPORT_SYMBOL();

void unregister_hdlc_protocol(struct hdlc_proto *proto)
{}
EXPORT_SYMBOL();

MODULE_AUTHOR();
MODULE_DESCRIPTION();
MODULE_LICENSE();

static struct packet_type hdlc_packet_type __read_mostly =;

static struct notifier_block hdlc_notifier =;

static int __init hdlc_module_init(void)
{}

static void __exit hdlc_module_exit(void)
{}

module_init();
module_exit(hdlc_module_exit);