linux/net/openvswitch/vport-netdev.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * Copyright (c) 2007-2012 Nicira, Inc.
 */

#define pr_fmt(fmt)

#include <linux/if_arp.h>
#include <linux/if_bridge.h>
#include <linux/if_vlan.h>
#include <linux/kernel.h>
#include <linux/llc.h>
#include <linux/rtnetlink.h>
#include <linux/skbuff.h>
#include <linux/openvswitch.h>
#include <linux/export.h>

#include <net/ip_tunnels.h>
#include <net/rtnetlink.h>

#include "datapath.h"
#include "vport.h"
#include "vport-internal_dev.h"
#include "vport-netdev.h"

static struct vport_ops ovs_netdev_vport_ops;

/* Must be called with rcu_read_lock. */
static void netdev_port_receive(struct sk_buff *skb)
{}

/* Called with rcu_read_lock and bottom-halves disabled. */
static rx_handler_result_t netdev_frame_hook(struct sk_buff **pskb)
{}

static struct net_device *get_dpdev(const struct datapath *dp)
{}

struct vport *ovs_netdev_link(struct vport *vport, const char *name)
{}
EXPORT_SYMBOL_GPL();

static struct vport *netdev_create(const struct vport_parms *parms)
{}

static void vport_netdev_free(struct rcu_head *rcu)
{}

void ovs_netdev_detach_dev(struct vport *vport)
{}

static void netdev_destroy(struct vport *vport)
{}

void ovs_netdev_tunnel_destroy(struct vport *vport)
{}
EXPORT_SYMBOL_GPL();

/* Returns null if this device is not attached to a datapath. */
struct vport *ovs_netdev_get_vport(struct net_device *dev)
{}

static struct vport_ops ovs_netdev_vport_ops =;

int __init ovs_netdev_init(void)
{}

void ovs_netdev_exit(void)
{}