#include <linux/module.h>
#define INCLUDE_VERMAGIC
#include <linux/build-salt.h>
#include <linux/elfnote-lto.h>
#include <linux/export-internal.h>
#include <linux/vermagic.h>
#include <linux/compiler.h>

#ifdef CONFIG_UNWINDER_ORC
#include <asm/orc_header.h>
ORC_HEADER;
#endif

BUILD_SALT;
BUILD_LTO_INFO;

MODULE_INFO(vermagic, VERMAGIC_STRING);
MODULE_INFO(name, KBUILD_MODNAME);

__visible struct module __this_module
__section(".gnu.linkonce.this_module") = {
	.name = KBUILD_MODNAME,
	.init = init_module,
#ifdef CONFIG_MODULE_UNLOAD
	.exit = cleanup_module,
#endif
	.arch = MODULE_ARCH_INIT,
};

MODULE_INFO(intree, "Y");

#ifdef CONFIG_RETPOLINE
MODULE_INFO(retpoline, "Y");
#endif

KSYMTAB_FUNC(udp_sock_create4, "", "");
KSYMTAB_FUNC(setup_udp_tunnel_sock, "_gpl", "");
KSYMTAB_FUNC(udp_tunnel_push_rx_port, "_gpl", "");
KSYMTAB_FUNC(udp_tunnel_drop_rx_port, "_gpl", "");
KSYMTAB_FUNC(udp_tunnel_notify_add_rx_port, "_gpl", "");
KSYMTAB_FUNC(udp_tunnel_notify_del_rx_port, "_gpl", "");
KSYMTAB_FUNC(udp_tunnel_xmit_skb, "_gpl", "");
KSYMTAB_FUNC(udp_tunnel_sock_release, "_gpl", "");
KSYMTAB_FUNC(udp_tun_rx_dst, "_gpl", "");

SYMBOL_CRC(udp_sock_create4, 0xd280c7d0, "");
SYMBOL_CRC(setup_udp_tunnel_sock, 0xe48f714a, "_gpl");
SYMBOL_CRC(udp_tunnel_push_rx_port, 0xfc8415c1, "_gpl");
SYMBOL_CRC(udp_tunnel_drop_rx_port, 0xd7253869, "_gpl");
SYMBOL_CRC(udp_tunnel_notify_add_rx_port, 0x18dbf0b8, "_gpl");
SYMBOL_CRC(udp_tunnel_notify_del_rx_port, 0x457ae9bb, "_gpl");
SYMBOL_CRC(udp_tunnel_xmit_skb, 0x2b97f0b0, "_gpl");
SYMBOL_CRC(udp_tunnel_sock_release, 0xc60c1dc3, "_gpl");
SYMBOL_CRC(udp_tun_rx_dst, 0xcce0472d, "_gpl");

static const struct modversion_info ____versions[]
__used __section("__versions") = {
	{ 0x6e720ff2, "rtnl_unlock" },
	{ 0x7696f8c7, "__list_add_valid_or_report" },
	{ 0x49cd25ed, "alloc_workqueue" },
	{ 0x8d522714, "__rcu_read_lock" },
	{ 0x85670f1d, "rtnl_is_locked" },
	{ 0xc5b6f236, "queue_work_on" },
	{ 0xa8104f1c, "kernel_bind" },
	{ 0xb3f42781, "udp_set_csum" },
	{ 0x37a0cba, "kfree" },
	{ 0x6ebf9277, "netdev_warn" },
	{ 0x77b594c, "udp_tunnel_nic_ops" },
	{ 0x1e357a2b, "ipv6_stub" },
	{ 0xf70e4a4d, "preempt_schedule_notrace" },
	{ 0x6091797f, "synchronize_rcu" },
	{ 0x2469810f, "__rcu_read_unlock" },
	{ 0x99517682, "udp_encap_enable" },
	{ 0x8c0a10a6, "kernel_sock_shutdown" },
	{ 0x8c03d20c, "destroy_workqueue" },
	{ 0xf214bde0, "iptunnel_xmit" },
	{ 0xb5f70e15, "nla_put" },
	{ 0x950eb34e, "__list_del_entry_valid_or_report" },
	{ 0x9bc7d8b8, "kernel_connect" },
	{ 0xdcb764ad, "memset" },
	{ 0x64b6d9d6, "skb_trim" },
	{ 0x9d0d6206, "unregister_netdevice_notifier" },
	{ 0xf88d53ec, "sock_create_kern" },
	{ 0xa5b1b5f3, "call_netdevice_notifiers" },
	{ 0x56470118, "__warn_printk" },
	{ 0xd2da1048, "register_netdevice_notifier" },
	{ 0xb14fa253, "metadata_dst_alloc" },
	{ 0x5e1b558a, "sock_release" },
	{ 0xc7a4fbed, "rtnl_lock" },
	{ 0xc9fd92be, "sock_bindtoindex" },
	{ 0x29977925, "kmalloc_trace" },
	{ 0x349cba85, "strchr" },
	{ 0xeb233a45, "__kmalloc" },
	{ 0xe61a6d75, "kmalloc_caches" },
	{ 0x17608925, "module_layout" },
};

MODULE_INFO(depends, "");

