Commit 381b897b authored by Vladimir Bashkirtsev's avatar Vladimir Bashkirtsev

Initial commit

parents
all: turn-server-service mysql-config
tar xf coturn-4.5.0.7.tar.gz
cd coturn-4.5.0.7 && ./configure --prefix=/usr --sysconfdir=/etc
$(MAKE) -C coturn-4.5.0.7
$(MAKE) -C coturn-4.5.0.7 install
mv /etc/turnserver.conf.default /etc/turnserver.conf
chmod 644 /etc/turnserver.conf
@echo "$$TURN_SERVER_SERVICE" > /lib/systemd/system/turnserver.service
systemctl enable turnserver.service
@echo "$$MYSQL_CONFIG" > /etc/config/mysql
install -v -Dm755 coturn /usr/share/easycwmp/functions
install -v -Dm755 turnserver-configure /usr/sbin/turnserver-configure
rm -rf coturn-4.5.0.7
turn-server-service:
define TURN_SERVER_SERVICE
[Unit]
Description=turnserver - coturn TURN server
After=network.target
[Service]
Type=forking
ExecStartPre=/usr/sbin/turnserver-configure
ExecStart=/usr/bin/turnserver -c /etc/turnserver.conf -o --no-stdout-log --syslog
ExecStartPost=sleep 3
PIDFile=/var/run/turnserver.pid
Restart=always
[Install]
WantedBy=default.target
endef
export TURN_SERVER_SERVICE
mysql-config:
define MYSQL_CONFIG
config mysql 'credentials'
option hostname ''
option database ''
option username ''
option password ''
endef
export MYSQL_CONFIG
#!/bin/sh
#common_execute_method_param "$parameter" "$permission" "$get_cmd" "$set_cmd" "xsd:$type" "$forcedinform"
# $forcedinform should be set to 1 if the parameter is included in the inform message otherwise empty
# Default of $type = string
#############################
# Entry point functuons #
#############################
prefix_list="$prefix_list $DMROOT.Coturn."
entry_execute_method_list="$entry_execute_method_list entry_execute_method_root_Coturn"
entry_execute_method_list_forcedinform="$entry_execute_method_list_forcedinform entry_execute_method_root_Coturn"
entry_execute_method_root_Coturn() {
case "$1" in ""|"$DMROOT."|"$DMROOT.Coturn."*)
common_execute_method_obj "$DMROOT.Coturn." "0"
common_execute_method_obj "$DMROOT.Coturn.MySQL." "0"
common_execute_method_param "$DMROOT.Coturn.MySQL.HostName" "1" "mysql_get_hostname" "mysql_set_hostname"
common_execute_method_param "$DMROOT.Coturn.MySQL.DataBase" "1" "mysql_get_database" "mysql_set_database"
common_execute_method_param "$DMROOT.Coturn.MySQL.UserName" "1" "mysql_get_username" "mysql_set_username"
common_execute_method_param "$DMROOT.Coturn.MySQL.Password" "1" "" "mysql_set_password"
return 0;
;;
esac
return $E_INVALID_PARAMETER_NAME;
}
#######################################
# Data model parameters functions #
#######################################
mysql_get_hostname() {
echo `$UCI_GET mysql.credentials.hostname`
}
mysql_set_hostname() {
local hostname=`$UCI_GET mysql.credentials.hostname`
if [ "$hostname" != "$1" ]; then
$UCI_SET mysql.credentials.hostname="$1"
$UCI_COMMIT
chmod a+r /etc/config/mysql
fi
}
mysql_get_database() {
echo `$UCI_GET mysql.credentials.database`
}
mysql_set_database() {
local database=`$UCI_GET mysql.credentials.database`
if [ "$database" != "$1" ]; then
$UCI_SET mysql.credentials.database="$1"
$UCI_COMMIT
chmod a+r /etc/config/mysql
fi
}
mysql_get_username() {
echo `$UCI_GET mysql.credentials.username`
}
mysql_set_username() {
local username=`$UCI_GET mysql.credentials.username`
if [ "$username" != "$1" ]; then
$UCI_SET mysql.credentials.username="$1"
$UCI_COMMIT
chmod a+r /etc/config/mysql
fi
}
mysql_set_password() {
local password=`$UCI_GET mysql.credentials.password`
if [ "$password" != "$1" ]; then
$UCI_SET mysql.credentials.password="$1"
$UCI_COMMIT
chmod a+r /etc/config/mysql
fi
}
#!/bin/sh
SERVER=`/sbin/uci -q get mysql.credentials.hostname`
DATABASE=`/sbin/uci -q get mysql.credentials.database`
USER=`/sbin/uci -q get mysql.credentials.username`
PASSWORD=`/sbin/uci -q get mysql.credentials.password`
if [ ! -z "$SERVER" ] && [ ! -z "$DATABASE" ] && [ ! -z "$USER" ] && [ ! -z "$PASSWORD" ]; then
sed -e "s/^.*mysql-userdb=.*/mysql-userdb=\"host=$SERVER dbname=$DATABASE user=$USER password=$PASSWORD\"/" -i /data/etc/turnserver.conf
else
exit 1
fi
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment