/* autogenerated by embedmodel.py.  DO NOT EDIT */

#include <zebra.h>
#include "yang.h"

static const char model[] =
	"// SPDX-License-Identifier: BSD-2-Clause\n"
	"submodule frr-bgp-common-multiprotocol {\n"
	"  yang-version 1.1;\n"
	"\n"
	"  belongs-to frr-bgp {\n"
	"    prefix \"bgp\";\n"
	"  }\n"
	"\n"
	"  import frr-routing {\n"
	"    prefix frr-rt;\n"
	"  }\n"
	"\n"
	"  organization\n"
	"    \"FRRouting\";\n"
	"  contact\n"
	"    \"FRR Users List: <mailto:frog@lists.frrouting.org> FRR Development\n"
	"     List: <mailto:dev@lists.frrouting.org>\";\n"
	"  description\n"
	"    \"This module contains general data definitions for use in BGP\n"
	"     Multiprotocol.\n"
	"\n"
	"     Copyright 2020 FRRouting\n"
	"\n"
	"     Redistribution and use in source and binary forms, with or without\n"
	"     modification, are permitted provided that the following conditions\n"
	"     are met:\n"
	"\n"
	"     1. Redistributions of source code must retain the above copyright notice,\n"
	"     this list of conditions and the following disclaimer.\n"
	"\n"
	"     2. Redistributions in binary form must reproduce the above copyright\n"
	"     notice, this list of conditions and the following disclaimer in the\n"
	"     documentation and/or other materials provided with the distribution.\n"
	"\n"
	"     THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n"
	"     \\\"AS IS\\\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\n"
	"     LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\n"
	"     A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\n"
	"     HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n"
	"     SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\n"
	"     LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n"
	"     DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\n"
	"     THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n"
	"     (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n"
	"     OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\";\n"
	"\n"
	"  revision 2019-12-03 {\n"
	"    description\n"
	"      \"Initial revision.\";\n"
	"  }\n"
	"\n"
	"  grouping mp-afi-safi-config {\n"
	"    description\n"
	"      \"Configuration parameters used for all BGP AFI-SAFIs.\";\n"
	"    leaf afi-safi-name {\n"
	"      type identityref {\n"
	"        base frr-rt:afi-safi-type;\n"
	"      }\n"
	"      description\n"
	"        \"AFI, SAFI.\";\n"
	"    }\n"
	"  }\n"
	"\n"
	"  grouping mp-all-afi-safi-list-contents {\n"
	"    description\n"
	"      \"A common grouping used for contents of the list that is used\n"
	"       for AFI-SAFI entries.\";\n"
	"    container ipv4-unicast {\n"
	"      when \"derived-from-or-self(../afi-safi-name, \'frr-rt:ipv4-unicast\')\" {\n"
	"        description\n"
	"          \"Include this container for IPv4 Unicast specific\n"
	"           configuration.\";\n"
	"      }\n"
	"      description\n"
	"        \"IPv4 unicast configuration options.\";\n"
	"    }\n"
	"\n"
	"    container ipv6-unicast {\n"
	"      when \"derived-from-or-self(../afi-safi-name, \'frr-rt:ipv6-unicast\')\" {\n"
	"        description\n"
	"          \"Include this container for IPv6 Unicast specific\n"
	"           configuration.\";\n"
	"      }\n"
	"      description\n"
	"        \"IPv6 unicast configuration options.\";\n"
	"    }\n"
	"\n"
	"    container ipv4-labeled-unicast {\n"
	"      when \"derived-from-or-self(../afi-safi-name, \'frr-rt:ipv4-labeled-unicast\')\" {\n"
	"        description\n"
	"          \"Include this container for IPv4 Labeled Unicast specific\n"
	"           configuration.\";\n"
	"      }\n"
	"      description\n"
	"        \"IPv4 Labeled Unicast configuration options.\";\n"
	"    }\n"
	"\n"
	"    container ipv6-labeled-unicast {\n"
	"      when \"derived-from-or-self(../afi-safi-name, \'frr-rt:ipv6-labeled-unicast\')\" {\n"
	"        description\n"
	"          \"Include this container for IPv6 Labeled Unicast specific\n"
	"           configuration.\";\n"
	"      }\n"
	"      description\n"
	"        \"IPv6 Labeled Unicast configuration options.\";\n"
	"    }\n"
	"\n"
	"    container l3vpn-ipv4-unicast {\n"
	"      when \"derived-from-or-self(../afi-safi-name, \'frr-rt:l3vpn-ipv4-unicast\')\" {\n"
	"        description\n"
	"          \"Include this container for IPv4 Unicast L3VPN specific\n"
	"           configuration.\";\n"
	"      }\n"
	"      description\n"
	"        \"Unicast IPv4 L3VPN configuration options.\";\n"
	"    }\n"
	"\n"
	"    container l3vpn-ipv6-unicast {\n"
	"      when \"derived-from-or-self(../afi-safi-name, \'frr-rt:l3vpn-ipv6-unicast\')\" {\n"
	"        description\n"
	"          \"Include this container for unicast IPv6 L3VPN specific\n"
	"           configuration.\";\n"
	"      }\n"
	"      description\n"
	"        \"Unicast IPv6 L3VPN configuration options.\";\n"
	"    }\n"
	"\n"
	"    container l3vpn-ipv4-multicast {\n"
	"      when \"derived-from-or-self(../afi-safi-name, \'frr-rt:l3vpn-ipv4-multicast\')\" {\n"
	"        description\n"
	"          \"Include this container for multicast IPv4 L3VPN specific\n"
	"           configuration.\";\n"
	"      }\n"
	"      description\n"
	"        \"Multicast IPv4 L3VPN configuration options.\";\n"
	"    }\n"
	"\n"
	"    container l3vpn-ipv6-multicast {\n"
	"      when \"derived-from-or-self(../afi-safi-name, \'frr-rt:l3vpn-ipv6-multicast\')\" {\n"
	"        description\n"
	"          \"Include this container for multicast IPv6 L3VPN specific\n"
	"           configuration.\";\n"
	"      }\n"
	"      description\n"
	"        \"Multicast IPv6 L3VPN configuration options.\";\n"
	"    }\n"
	"\n"
	"    container l2vpn-vpls {\n"
	"      when \"derived-from-or-self(../afi-safi-name, \'frr-rt:l2vpn-vpls\')\" {\n"
	"        description\n"
	"          \"Include this container for BGP-signalled VPLS specific\n"
	"           configuration.\";\n"
	"      }\n"
	"      description\n"
	"        \"BGP-signalled VPLS configuration options.\";\n"
	"    }\n"
	"\n"
	"    container l2vpn-evpn {\n"
	"      when \"derived-from-or-self(../afi-safi-name, \'frr-rt:l2vpn-evpn\')\" {\n"
	"        description\n"
	"          \"Include this container for BGP EVPN specific\n"
	"           configuration.\";\n"
	"      }\n"
	"      description\n"
	"        \"BGP EVPN configuration options.\";\n"
	"    }\n"
	"\n"
	"    container ipv4-multicast {\n"
	"      when \"derived-from-or-self(../afi-safi-name, \'frr-rt:ipv4-multicast\')\" {\n"
	"        description\n"
	"          \"Include this container for IPv4 multicast specific\n"
	"           configuration.\";\n"
	"      }\n"
	"      description\n"
	"        \"IPv4 multicast configuration options.\";\n"
	"    }\n"
	"\n"
	"    container ipv6-multicast {\n"
	"      when \"derived-from-or-self(../afi-safi-name, \'frr-rt:ipv6-multicast\')\" {\n"
	"        description\n"
	"          \"Include this container for IPv6 multicast specific\n"
	"           configuration.\";\n"
	"      }\n"
	"      description\n"
	"        \"IPv6 multicast configuration options.\";\n"
	"    }\n"
	"\n"
	"    container ipv4-flowspec {\n"
	"      when \"derived-from-or-self(../afi-safi-name, \'frr-rt:ipv4-flowspec\')\" {\n"
	"        description\n"
	"          \"Include this container for IPv4 flowspec specific\n"
	"           configuration.\";\n"
	"      }\n"
	"      description\n"
	"        \"IPv4 flowspec configuration options.\";\n"
	"    }\n"
	"\n"
	"    container ipv6-flowspec {\n"
	"      when \"derived-from-or-self(../afi-safi-name, \'frr-rt:ipv6-flowspec\')\" {\n"
	"        description\n"
	"          \"Include this container for IPv6 flowspec specific\n"
	"           configuration.\";\n"
	"      }\n"
	"      description\n"
	"        \"IPv6 flowspec configuration options.\";\n"
	"    }\n"
	"  }\n"
	"}\n"
	"";

static struct yang_module_embed embed = {
	.mod_name = "frr-bgp",
	.mod_rev = "",
	.sub_mod_name = "frr-bgp-common-multiprotocol",
	.sub_mod_rev = "2019-12-03",
	.data = model,
	.format = LYS_IN_YANG,
};

static void embed_register(void) __attribute__((_CONSTRUCTOR(2000)));
static void embed_register(void)
{
	yang_module_embed(&embed);
}
