blob: dc65a0d71d9b27f9f8920026319b247ec56697ec [file] [log] [blame]
Martin Varghese571912c2020-02-24 10:57:50 +05301/* SPDX-License-Identifier: GPL-2.0 */
2
3#ifndef __NET_BAREUDP_H
4#define __NET_BAREUDP_H
5
6#include <linux/types.h>
7#include <linux/skbuff.h>
Eli Cohend43600c2019-11-17 14:35:42 +02008#include <net/rtnetlink.h>
Martin Varghese571912c2020-02-24 10:57:50 +05309
10struct bareudp_conf {
11 __be16 ethertype;
12 __be16 port;
13 u16 sport_min;
Martin Varghese4b5f6722020-02-24 10:58:35 +053014 bool multi_proto_mode;
Martin Varghese571912c2020-02-24 10:57:50 +053015};
16
17struct net_device *bareudp_dev_create(struct net *net, const char *name,
18 u8 name_assign_type,
19 struct bareudp_conf *info);
20
Eli Cohend43600c2019-11-17 14:35:42 +020021static inline bool netif_is_bareudp(const struct net_device *dev)
22{
23 return dev->rtnl_link_ops &&
24 !strcmp(dev->rtnl_link_ops->kind, "bareudp");
25}
26
Martin Varghese571912c2020-02-24 10:57:50 +053027#endif