1571912c6SMartin Varghese /* SPDX-License-Identifier: GPL-2.0 */ 2571912c6SMartin Varghese 3571912c6SMartin Varghese #ifndef __NET_BAREUDP_H 4571912c6SMartin Varghese #define __NET_BAREUDP_H 5571912c6SMartin Varghese 6571912c6SMartin Varghese #include <linux/types.h> 7571912c6SMartin Varghese #include <linux/skbuff.h> 8*d43600c0SEli Cohen #include <net/rtnetlink.h> 9571912c6SMartin Varghese 10571912c6SMartin Varghese struct bareudp_conf { 11571912c6SMartin Varghese __be16 ethertype; 12571912c6SMartin Varghese __be16 port; 13571912c6SMartin Varghese u16 sport_min; 144b5f6723SMartin Varghese bool multi_proto_mode; 15571912c6SMartin Varghese }; 16571912c6SMartin Varghese 17571912c6SMartin Varghese struct net_device *bareudp_dev_create(struct net *net, const char *name, 18571912c6SMartin Varghese u8 name_assign_type, 19571912c6SMartin Varghese struct bareudp_conf *info); 20571912c6SMartin Varghese 21*d43600c0SEli Cohen static inline bool netif_is_bareudp(const struct net_device *dev) 22*d43600c0SEli Cohen { 23*d43600c0SEli Cohen return dev->rtnl_link_ops && 24*d43600c0SEli Cohen !strcmp(dev->rtnl_link_ops->kind, "bareudp"); 25*d43600c0SEli Cohen } 26*d43600c0SEli Cohen 27571912c6SMartin Varghese #endif 28