#!/bin/bash

# Neutron firewall plugin
# ---------------------------

# Save trace setting
_XTRACE_NEUTRON_FIREWALL=$(set +o | grep xtrace)
set +o xtrace

FWAAS_PLUGIN=${FWAAS_PLUGIN:-neutron_fwaas.services.firewall.fwaas_plugin.FirewallPlugin}
FWAAS_DRIVER=${FWAAS_DRIVER:-neutron_fwaas.services.firewall.drivers.linux.iptables_fwaas.IptablesFwaasDriver}

function neutron_fwaas_configure_common {
    _neutron_service_plugin_class_add $FWAAS_PLUGIN
}

function neutron_fwaas_configure_driver {
    # Uses oslo config generator to generate FWaaS sample configuration files
    (cd $NEUTRON_FWAAS_DIR && exec ./tools/generate_config_file_samples.sh)

    FWAAS_DRIVER_CONF_FILENAME=/etc/neutron/fwaas_driver.ini
    cp $NEUTRON_FWAAS_DIR/etc/fwaas_driver.ini.sample $FWAAS_DRIVER_CONF_FILENAME

    iniset_multiline $FWAAS_DRIVER_CONF_FILENAME fwaas enabled True
    iniset_multiline $FWAAS_DRIVER_CONF_FILENAME fwaas driver "$FWAAS_DRIVER"
}

function neutron_fwaas_stop {
    :
}

# Restore xtrace
$_XTRACE_NEUTRON_FIREWALL