#include <linux/module.h>
#include <net/sock.h>
#include <net/af_vsock.h>
#include <linux/if_arp.h>
static DEFINE_SPINLOCK(vsock_tap_lock);
static struct list_head vsock_tap_all __read_mostly = …;
int vsock_add_tap(struct vsock_tap *vt)
{ … }
EXPORT_SYMBOL_GPL(…);
int vsock_remove_tap(struct vsock_tap *vt)
{ … }
EXPORT_SYMBOL_GPL(…);
static int __vsock_deliver_tap_skb(struct sk_buff *skb,
struct net_device *dev)
{ … }
static void __vsock_deliver_tap(struct sk_buff *skb)
{ … }
void vsock_deliver_tap(struct sk_buff *build_skb(void *opaque), void *opaque)
{ … }
EXPORT_SYMBOL_GPL(…);