# DO NOT EDIT THIS FILE -- OPNsense auto-generated file
{% set general = helpers.getNodeByTag('OPNsense.ndpproxy.general') %}
{% if general.enabled|default("0") == "1" and general.upstream and general.downstream %}
ndp_proxy_go_enable="YES"
ndp_proxy_go_upstream="{{ helpers.physical_interface(general.upstream) }}"
{%     set downstream_interfaces = [] %}
{%     for interface in general.downstream.split(',') %}
{%         do downstream_interfaces.append(helpers.physical_interface(interface)) %}
{%     endfor %}
ndp_proxy_go_downstream="{{ downstream_interfaces|join(' ') }}"
{%     if general.cache_file == "1" %}
ndp_proxy_go_cache_file="/var/db/ndpproxy/cache.json"
{%     endif %}
{%     set flags = [] %}
{%     if general.debug == "1" %}
{%         do flags.append('--debug') %}
{%     endif %}
{%     if general.ra == "0" %}
{%         do flags.append('--no-ra') %}
{%     endif %}
{%     if general.routes == "0" %}
{%         do flags.append('--no-routes') %}
{%     endif %}
{%     if general.cache_ttl %}
{%         do flags.append('--cache-ttl ' ~ general.cache_ttl ~ 'm') %}
{%     endif %}
{%     if general.cache_max %}
{%         do flags.append('--cache-max ' ~ general.cache_max) %}
{%     endif %}
{%     if general.route_qps %}
{%         do flags.append('--route-qps ' ~ general.route_qps) %}
{%     endif %}
{%     if general.pf_qps %}
{%         do flags.append('--pf-qps ' ~ general.pf_qps) %}
{%     endif %}
{%     if general.pcap_timeout %}
{%         do flags.append('--pcap-timeout ' ~ general.pcap_timeout ~ 'ms') %}
{%     endif %}
{%     for alias in helpers.toList('OPNsense.ndpproxy.aliases.alias') %}
{%         set iface = alias.interface|default('') %}
{%         if iface == '' %}
{%             do flags.append('--pf=:' ~ helpers.getUUID(alias.alias).name) %}
{%         else %}
{%             do flags.append('--pf=' ~ helpers.physical_interface(iface) ~ ':' ~ helpers.getUUID(alias.alias).name) %}
{%         endif %}
{%     endfor %}
{%     if flags|length > 0 %}
ndp_proxy_go_flags="{{ flags|join(' ') }}"
{%     endif %}
{% else %}
ndp_proxy_go_enable="NO"
{% endif %}
