########################################################
#
# autogenerated by igmp_proxy.py
#
# The configuration file must define one upstream interface, and one or more
# downstream interfaces.
#
# If multicast traffic originates outside the upstream subnet, the "altnet"
# option can be used in order to define legal multicast sources.
#
# The "quickleave" should be used to avoid saturation of the upstream link. The
# option should only be used if it's absolutely nessecary to accurately imitate
# just one Client.
#
########################################################

{% if disable_quickleave is not vyos_defined %}
quickleave
{% endif %}
{% if interface is vyos_defined %}
{%     for iface, config in interface.items() %}

# Configuration for {{ iface }} ({{ config.role }} interface)
{%         if config.role is vyos_defined('disabled') %}
phyint {{ iface }} disabled
{%         else %}
phyint {{ iface }} {{ config.role }} ratelimit 0 threshold {{ config.threshold }}
{%         endif %}
{%         if config.alt_subnet is vyos_defined %}
{%             for subnet in config.alt_subnet %}
        altnet {{ subnet }}
{%             endfor %}
{%         endif %}
{%         if config.whitelist is vyos_defined %}
{%             for subnet in config.whitelist %}
        whitelist {{ subnet }}
{%             endfor %}
{%         endif %}
{%     endfor %}
{% endif %}