#!/bin/bash . /usr/src/m2/framework/bash_functions.sh . /usr/src/m2/framework/settings.sh VERSION="1.1.2" SCRIPT_NAME="Core/Radius configure" function replace_value() { # arguments: # 1 - file # 2 - parameter # 3 - value sed -c -i "s/\($2[ \t]*=[ \t]*\).*/\1$3/" $1 } function configure_m2_radius() { local radiusd_conf="/usr/local/etc/raddb/radiusd.conf" local clients_conf="/usr/local/etc/raddb/clients.conf" local freeradius_version=$(cat /etc/m2/system.conf | grep freeradius_version | awk '{print $3}') if [ "$freeradius_version" == "3" ]; then # overwrite m2 virtual server /bin/cp -fr /usr/src/m2/freeradius/m2_virtual_server /usr/local/etc/raddb/sites-available/m2 # overwrite m2 module configuration /bin/cp -fr /usr/src/m2/freeradius/m2_module_conf /usr/local/etc/raddb/mods-available/m2 else # overwrite m2 module conf /bin/cp -fr /usr/src/m2/freeradius/m2_module_conf /usr/local/etc/raddb/modules # overwrite site configuration for m2 /bin/cp -fr /usr/src/m2/freeradius/m2_default_site /usr/local/etc/raddb/sites-enabled/default fi replace_value $radiusd_conf "reject_delay" "0" #TODO choose between local and remote freeswitch client replace_value $clients_conf "secret" "m2" } # ---------------- MAIN ------------- k_start configure_m2_radius "$1" # create symlink for m2 commands k_symlink_create /usr/src/m2/core/m2_core_commands.sh /usr/bin/m2 mkdir -p /tmp/m2/m2_core_commands chmod 777 -R /tmp/m2/m2_core_command_result # fix radius init script #cp -fr /usr/src/m2/freeradius/freeradius_init /etc/init.d/radiusd # fix core dump file size limit cp -fr /usr/src/m2/freeradius/radiusd_sysconfig /etc/sysconfig/radiusd # safe init scripts /usr/src/m2/maintenance/safe_services.sh # new directory for call tracing mkdir -p /tmp/m2/m2_call_tracing chmod 777 -R /tmp/m2/m2_call_tracing # permissions for call tracing chmod a+r -R /usr/local/etc/raddb/dictionary k_exit $EXIT_CODE