From 44eddc5de5c823798b827e9b8504c91c791b0d24 Mon Sep 17 00:00:00 2001 From: Lionel Gauthier <lionel.gauthier@eurecom.fr> Date: Thu, 4 Dec 2014 12:07:47 +0000 Subject: [PATCH] realm git-svn-id: http://svn.eurecom.fr/openair4G/trunk@6156 818b1a75-f10b-46b9-bf7c-635c3b92a50f --- .../PROJECTS/GENERIC-LTE-EPC/start_epc.bash | 259 ++---------------- targets/PROJECTS/GENERIC-LTE-EPC/utils.bash | 11 +- 2 files changed, 28 insertions(+), 242 deletions(-) diff --git a/targets/PROJECTS/GENERIC-LTE-EPC/start_epc.bash b/targets/PROJECTS/GENERIC-LTE-EPC/start_epc.bash index 329f66dca6..dc92e4352f 100755 --- a/targets/PROJECTS/GENERIC-LTE-EPC/start_epc.bash +++ b/targets/PROJECTS/GENERIC-LTE-EPC/start_epc.bash @@ -36,7 +36,7 @@ ######################################### # INPUT OF THIS SCRIPT: -# THE DIRECTORY WHERE ARE LOCATED THE CONFIGURATION FILES +# THE EPC CONFIGURATION FILE ######################################### # This script start MME+S/P-GW (all in one executable, on one host) @@ -47,32 +47,8 @@ THIS_SCRIPT_PATH=$(dirname $(readlink -f $0)) . $THIS_SCRIPT_PATH/networks.bash ########################################################### -control_c() -# run if user hits control-c -{ - echo -en "\n*** Exiting... ***\n" - pkill -9 tshark - pkill -9 oai_epc - echo -en "\n*** Exit ***\n" - exit $? -} - -if [ $# -eq 1 ]; then - declare -x CONFIG_FILE_DIR=$1 - if [ ! -d $CONFIG_FILE_DIR ]; then - echo_error "ERROR while invoking this script, as first argument to this script you have to provide the path to a directory (./CONF/VLAN.VIRTUAL.$HOSTNAME for example) containing valid epc and enb config files" - exit 1 - fi -else - echo_error "ERROR while invoking this script, as first argument to this script you have to provide the path to a directory (./CONF/VLAN.VIRTUAL.$HOSTNAME for example) containing valid epc and enb config files" - exit 1 -fi - - - #check_install_epc_software - ################################## # Get or set OBJ DIR and compile # ################################## @@ -104,8 +80,6 @@ else cd ./$OBJ_DIR fi -pkill oai_epc -pkill tshark if [ -f Makefile ] then @@ -122,29 +96,27 @@ fi cd $THIS_SCRIPT_PATH + +####################################################### +# COMPILE GTP kernel modules +####################################################### +(cd $OPENAIRCN_DIR/GTPV1-U/GTPUAH;make;cp -f ./Bin/libxt_*.so /lib/xtables;) +(cd $OPENAIRCN_DIR/GTPV1-U/GTPURH;make;cp -f ./Bin/libxt_*.so /lib/xtables;) + ####################################################### # FIND CONFIG FILE ####################################################### -SEARCHED_CONFIG_FILE_EPC="epc.`hostname -s`.conf" -CONFIG_FILE_EPC=`find $CONFIG_FILE_DIR -iname $SEARCHED_CONFIG_FILE_EPC` +DEFAULT_CONFIG_FILE="epc.`hostname -s`.conf" +CONFIG_FILE_EPC=${1:-DEFAULT_CONFIG_FILE} + echo "CONFIG_FILE_EPC=$CONFIG_FILE_EPC" if [ -f $CONFIG_FILE_EPC ]; then echo_warning "EPC config file found is now $CONFIG_FILE_EPC" else - echo_error "EPC config file not found, exiting (searched for $SEARCHED_CONFIG_FILE_EPC)" + echo_error "EPC config file not found, exiting (searched for $CONFIG_FILE_EPC)" exit 1 fi -SEARCHED_CONFIG_FILE_ENB="enb*.conf" -CONFIG_FILE_ENB=`find $CONFIG_FILE_DIR -iname $SEARCHED_CONFIG_FILE_ENB` -if [ -f $CONFIG_FILE_ENB ]; then - echo_warning "eNB config file found is now $CONFIG_FILE_ENB" -else - echo_error "eNB config file not found, exiting" - exit 1 -fi - - ####################################################### # SOURCE CONFIG FILE @@ -152,170 +124,19 @@ fi rm -f /tmp/source.txt VARIABLES=" GNU_DEBUGGER\|\ - REALM\|\ - ENB_INTERFACE_NAME_FOR_S1_MME\|\ - ENB_IPV4_ADDRESS_FOR_S1_MME\|\ - ENB_INTERFACE_NAME_FOR_S1U\|\ - ENB_IPV4_ADDRESS_FOR_S1U\|\ - MME_INTERFACE_NAME_FOR_S6A\|\ - MME_IPV4_ADDRESS_FOR_S6A\|\ - MME_INTERFACE_NAME_FOR_S1_MME\|\ - MME_IPV4_ADDRESS_FOR_S1_MME\|\ - MME_INTERFACE_NAME_FOR_S11_MME\|\ - MME_IPV4_ADDRESS_FOR_S11_MME\|\ - HSS_INTERFACE_NAME_FOR_S6A\|\ - HSS_IPV4_ADDRESS_FOR_S6A\|\ - SGW_INTERFACE_NAME_FOR_S11\|\ - SGW_IPV4_ADDRESS_FOR_S11\|\ - SGW_INTERFACE_NAME_FOR_S1U_S12_S4_UP\|\ - SGW_IPV4_ADDRESS_FOR_S1U_S12_S4_UP\|\ - SGW_INTERFACE_NAME_FOR_S5_S8_UP\|\ - SGW_IPV4_ADDRESS_FOR_S5_S8_UP\|\ - PGW_INTERFACE_NAME_FOR_S5_S8\|\ - PGW_IPV4_ADDRESS_FOR_S5_S8\|\ - PGW_INTERFACE_NAME_FOR_SGI\|\ - PGW_IPV4_ADDR_FOR_SGI" + REALM" VARIABLES=$(echo $VARIABLES | sed -e 's/\\r//g') VARIABLES=$(echo $VARIABLES | tr -d ' ') cat $CONFIG_FILE_EPC | grep -w "$VARIABLES"| tr -d " " | tr -d ";" > /tmp/source.txt -cat $CONFIG_FILE_ENB | grep -w "$VARIABLES"| tr -d " " | tr -d ";" >> /tmp/source.txt source /tmp/source.txt -declare ENB_IPV4_NETMASK_FOR_S1_MME=$( echo $ENB_IPV4_ADDRESS_FOR_S1_MME | cut -f2 -d '/') -declare ENB_IPV4_NETMASK_FOR_S1U=$( echo $ENB_IPV4_ADDRESS_FOR_S1U | cut -f2 -d '/') -declare MME_IPV4_NETMASK_FOR_S1_MME=$( echo $MME_IPV4_ADDRESS_FOR_S1_MME | cut -f2 -d '/') -declare MME_IPV4_NETMASK_FOR_S11_MME=$( echo $MME_IPV4_ADDRESS_FOR_S11_MME | cut -f2 -d '/') -declare MME_IPV4_NETMASK_FOR_S6A=$( echo $MME_IPV4_ADDRESS_FOR_S6A | cut -f2 -d '/') -declare SGW_IPV4_NETMASK_FOR_S11=$( echo $SGW_IPV4_ADDRESS_FOR_S11 | cut -f2 -d '/') -declare SGW_IPV4_NETMASK_FOR_S1U_S12_S4_UP=$(echo $SGW_IPV4_ADDRESS_FOR_S1U_S12_S4_UP | cut -f2 -d '/') -declare SGW_IPV4_NETMASK_FOR_S5_S8_UP=$( echo $SGW_IPV4_ADDRESS_FOR_S5_S8_UP | cut -f2 -d '/') -declare PGW_IPV4_NETMASK_FOR_S5_S8=$( echo $PGW_IPV4_ADDRESS_FOR_S5_S8 | cut -f2 -d '/') -declare PGW_IPV4_NETMASK_FOR_SGI=$( echo $PGW_IPV4_ADDR_FOR_SGI | cut -f2 -d '/') - -ENB_IPV4_ADDRESS_FOR_S1_MME=$( echo $ENB_IPV4_ADDRESS_FOR_S1_MME | cut -f1 -d '/') -ENB_IPV4_ADDRESS_FOR_S1U=$( echo $ENB_IPV4_ADDRESS_FOR_S1U | cut -f1 -d '/') -MME_IPV4_ADDRESS_FOR_S1_MME=$( echo $MME_IPV4_ADDRESS_FOR_S1_MME | cut -f1 -d '/') -MME_IPV4_ADDRESS_FOR_S11_MME=$( echo $MME_IPV4_ADDRESS_FOR_S11_MME | cut -f1 -d '/') -SGW_IPV4_ADDRESS_FOR_S11=$( echo $SGW_IPV4_ADDRESS_FOR_S11 | cut -f1 -d '/') -SGW_IPV4_ADDRESS_FOR_S6A=$( echo $SGW_IPV4_ADDRESS_FOR_S6A | cut -f1 -d '/') -SGW_IPV4_ADDRESS_FOR_S1U_S12_S4_UP=$( echo $SGW_IPV4_ADDRESS_FOR_S1U_S12_S4_UP | cut -f1 -d '/') -SGW_IPV4_ADDRESS_FOR_S5_S8_UP=$( echo $SGW_IPV4_ADDRESS_FOR_S5_S8_UP | cut -f1 -d '/') -PGW_IPV4_ADDRESS_FOR_S5_S8=$( echo $PGW_IPV4_ADDRESS_FOR_S5_S8 | cut -f1 -d '/') -PGW_IPV4_ADDR_FOR_SGI=$( echo $PGW_IPV4_ADDR_FOR_SGI | cut -f1 -d '/') - -#is_vlan_interface $MME_INTERFACE_NAME_FOR_S1_MME \ -# $SGW_INTERFACE_NAME_FOR_S1U_S12_S4_UP - - - -#delete_sgi_vlans -#get_mac_router - -echo " Clearing any existing rules and setting default policy.." -rmmod iptable_raw > /dev/null 2>&1 -rmmod iptable_mangle > /dev/null 2>&1 -rmmod iptable_nat > /dev/null 2>&1 -rmmod iptable_filter > /dev/null 2>&1 -rmmod ip_tables > /dev/null 2>&1 -rmmod xt_state xt_mark xt_GTPUAH xt_GTPURH xt_tcpudp xt_connmark ipt_LOG ipt_MASQUERADE > /dev/null 2>&1 -rmmod x_tables > /dev/null 2>&1 -rmmod nf_conntrack_netlink nfnetlink nf_nat nf_conntrack_ipv4 nf_conntrack > /dev/null 2>&1 - -modprobe ip_tables -modprobe x_tables - -iptables -P INPUT ACCEPT -iptables -F INPUT -iptables -P OUTPUT ACCEPT -iptables -F OUTPUT -iptables -P FORWARD ACCEPT -iptables -F FORWARD -iptables -t nat -F -iptables -t mangle -F -iptables -t filter -F -iptables -t raw -F - -ip route flush cache - -(cd $OPENAIRCN_DIR/GTPV1-U/GTPUAH;make;cp -f ./Bin/libxt_*.so /lib/xtables;insmod $OPENAIRCN_DIR/GTPV1-U/GTPUAH/Bin/xt_GTPUAH.ko) -(cd $OPENAIRCN_DIR/GTPV1-U/GTPURH;make;cp -f ./Bin/libxt_*.so /lib/xtables;insmod $OPENAIRCN_DIR/GTPV1-U/GTPURH/Bin/xt_GTPURH.ko) - -echo " Enabling forwarding" -bash_exec "sysctl -w net.ipv4.ip_forward=1" -assert " `sysctl -n net.ipv4.ip_forward` -eq 1" $LINENO - -# Dynamic IP users: -# -# If you get your IP address dynamically from SLIP, PPP, or DHCP, -# enable this following option. This enables dynamic-address hacking -# which makes the life with Diald and similar programs much easier. -# -echo " Disabling DynamicAddr.." -bash_exec "sysctl -w net.ipv4.ip_dynaddr=0" -assert " `sysctl -n net.ipv4.ip_dynaddr` -eq 0" $LINENO - -bash_exec "sysctl -w net.ipv4.conf.all.log_martians=0" -assert " `sysctl -n net.ipv4.conf.all.log_martians` -eq 0" $LINENO - -echo " Disabling reverse path filtering" -bash_exec "sysctl -w net.ipv4.conf.all.rp_filter=1" -assert " `sysctl -n net.ipv4.conf.all.rp_filter` -eq 1" $LINENO -bash_exec "sysctl -w net.ipv4.conf.$PGW_INTERFACE_NAME_FOR_SGI.rp_filter=1" -assert " `sysctl -n net.ipv4.conf.$PGW_INTERFACE_NAME_FOR_SGI.rp_filter` -eq 1" $LINENO -bash_exec "sysctl -w net.ipv4.conf.$SGW_INTERFACE_NAME_FOR_S1U_S12_S4_UP.rp_filter=1" -assert " `sysctl -n net.ipv4.conf.$SGW_INTERFACE_NAME_FOR_S1U_S12_S4_UP.rp_filter` -eq 1" $LINENO - -echo "0" > /proc/sys/net/ipv4/conf/all/proxy_arp -echo "0" > /proc/sys/net/ipv4/conf/$PGW_INTERFACE_NAME_FOR_SGI/proxy_arp -echo "0" > /proc/sys/net/ipv4/conf/$SGW_INTERFACE_NAME_FOR_S1U_S12_S4_UP/proxy_arp - -# REMINDER for tuning -bash_exec "sysctl -w net.ipv4.netfilter.ip_conntrack_max=10000" - -iptables -A FORWARD -m state --state INVALID -j LOG +check_epc_s6a_certificate $REALM +iptables -A FORWARD -m state --state INVALID -j LOG --log-prefix "FW: INVALID STATE:" #iptables -I PREROUTING -t raw -i $SGW_INTERFACE_NAME_FOR_S1U_S12_S4_UP -j LOG --log-level crit --log-ip-options --log-prefix "PREROUTING raw:" -#iptables -A OUTPUT -t filter -j LOG --log-level crit --log-ip-options --log-prefix "OUTPUT filter:" -#iptables -A OUTPUT -t mangle -j LOG --log-level crit --log-ip-options --log-prefix "OUTPUT mangle:" -#iptables -A OUTPUT -t nat -j LOG --log-level crit --log-ip-options --log-prefix "OUTPUT nat:" -#iptables -A OUTPUT -t raw -j LOG --log-level crit --log-ip-options --log-prefix "OUTPUT raw:" -#iptables -A FORWARD -t filter -j LOG --log-level crit --log-ip-options --log-prefix "FORWARD filter:" -#iptables -A FORWARD -t mangle -j LOG --log-level crit --log-ip-options --log-prefix "FORWARD mangle:" -#iptables -I POSTROUTING -t mangle -j LOG --log-level crit --log-ip-options --log-prefix " ---> POSTROUTING mangle:" -#iptables -I POSTROUTING -t nat -j LOG --log-level crit --log-ip-options --log-prefix " ---> POSTROUTING nat:" -#iptables -A PREROUTING -t nat -j LOG --log-level crit --log-ip-options --log-prefix " <--- PREROUTING nat:" -#iptables -I PREROUTING -t mangle -j LOG --log-level crit --log-ip-options --log-prefix " <--- PREROUTING mangle:" -################################################## -# LAUNCH MME + S+P-GW executable -################################################## - -cd $THIS_SCRIPT_PATH -if [ ! -d "OUTPUT/"$HOSTNAME ] -then - bash_exec "mkdir -p -m 777 ./OUTPUT/$HOSTNAME" - echo_success "Created OUTPUT/$HOSTNAME directory" -fi - - -ITTI_LOG_FILE=itti_mme.$HOSTNAME.log -#rotate_log_file $THIS_SCRIPT_PATH/OUTPUT/$HOSTNAME/$ITTI_LOG_FILE - -STDOUT_LOG_FILE=stdout_mme.$HOSTNAME.log -#rotate_log_file $THIS_SCRIPT_PATH/OUTPUT/$HOSTNAME/$STDOUT_LOG_FILE - -PCAP_S1C_LOG_FILE=tshark_mme_s1c.$HOSTNAME.pcap -#rotate_log_file $THIS_SCRIPT_PATH/OUTPUT/$HOSTNAME/$PCAP_S1C_LOG_FILE - -PCAP_S6A_LOG_FILE=tshark_mme_s6a.$HOSTNAME.pcap -#rotate_log_file $THIS_SCRIPT_PATH/OUTPUT/$HOSTNAME/$PCAP_S6A_LOG_FILE - -PCAP_S6A_S1C_LOG_FILE=tshark_mme_s6a_s1c.$HOSTNAME.pcap - -PCAP_SGI_LOG_FILE=tshark_mme_sgi.$HOSTNAME.pcap - touch $THIS_SCRIPT_PATH/kill_epc.bash echo '#!/bin/bash' > $THIS_SCRIPT_PATH/kill_epc.bash @@ -339,52 +160,16 @@ echo "rmmod ip_tables" >> $THIS_SCRIPT_PATH/kill_epc.bash echo "rmmod xt_state xt_mark xt_GTPUAH xt_GTPURH xt_tcpudp xt_connmark ipt_LOG ipt_MASQUERADE" >> $THIS_SCRIPT_PATH/kill_epc.bash echo "rmmod x_tables" >> $THIS_SCRIPT_PATH/kill_epc.bash echo "rmmod nf_conntrack_netlink nfnetlink nf_nat nf_conntrack_ipv4 nf_conntrack" >> $THIS_SCRIPT_PATH/kill_epc.bash - chmod 777 $THIS_SCRIPT_PATH/kill_epc.bash -trap control_c SIGINT - -echo_success "Resolving hss.$REALM" -HSS_IP=$(get_ip hss.$REALM) -echo_success "HSS_IP: $HSS_IP" - -HSS_ROUTE=$(ip route get $HSS_IP | grep $HSS_IP ) -HSS_ROUTE_IS_LOCAL=`echo $HSS_ROUTE | cut -d ' ' -f 1` -if [ "x$HSS_ROUTE_IS_LOCAL" == "xlocal" ]; then - MME_INTERFACE_NAME_FOR_S6A=`ip route get $HSS_IP | grep $HSS_IP | cut -d ' ' -f 4` -else - MME_INTERFACE_NAME_FOR_S6A=`ip route get $HSS_IP | grep $HSS_IP | cut -d ' ' -f 3` -fi - -echo_success "MME_INTERFACE_NAME_FOR_S1_MME : $MME_INTERFACE_NAME_FOR_S1_MME" -echo_success "MME_INTERFACE_NAME_FOR_S6A : $MME_INTERFACE_NAME_FOR_S6A" # see http://www.coverfire.com/articles/queueing-in-the-linux-network-stack/ -bash_exec "ethtool -A $MME_INTERFACE_NAME_FOR_S1_MME autoneg off rx off tx off" -bash_exec "ethtool -G $MME_INTERFACE_NAME_FOR_S1_MME rx 4096 tx 4096" -bash_exec "ethtool -C $MME_INTERFACE_NAME_FOR_S1_MME rx-usecs 3" -bash_exec "ifconfig $MME_INTERFACE_NAME_FOR_S1_MME txqueuelen 1000" - -if [ x$MME_INTERFACE_NAME_FOR_S1_MME != x$SGW_INTERFACE_NAME_FOR_S1U_S12_S4_UP ]; then - bash_exec "ethtool -A $SGW_INTERFACE_NAME_FOR_S1U_S12_S4_UP autoneg off rx off tx off" - bash_exec "ethtool -G $SGW_INTERFACE_NAME_FOR_S1U_S12_S4_UP rx 4096 tx 4096" - bash_exec "ethtool -C $SGW_INTERFACE_NAME_FOR_S1U_S12_S4_UP rx-usecs 3" - bash_exec "ifconfig $SGW_INTERFACE_NAME_FOR_S1U_S12_S4_UP txqueuelen 1000" -fi - -if [ x$MME_INTERFACE_NAME_FOR_S1_MME == x$MME_INTERFACE_NAME_FOR_S6A ]; then - nohup tshark -i $MME_INTERFACE_NAME_FOR_S1_MME -f "not port 22" -w $THIS_SCRIPT_PATH/OUTPUT/$HOSTNAME/$PCAP_S6A_S1C_LOG_FILE & -else - nohup tshark -i $MME_INTERFACE_NAME_FOR_S1_MME -f "not port 22" -w $THIS_SCRIPT_PATH/OUTPUT/$HOSTNAME/$PCAP_S1C_LOG_FILE & - nohup tshark -i $MME_INTERFACE_NAME_FOR_S6A -f "not port 22" -w $THIS_SCRIPT_PATH/OUTPUT/$HOSTNAME/$PCAP_S6A_LOG_FILE & -fi - -if [ x$PGW_INTERFACE_NAME_FOR_SGI != xnone ]; then - nohup tshark -i $PGW_INTERFACE_NAME_FOR_SGI -f "not port 22" -w $THIS_SCRIPT_PATH/OUTPUT/$HOSTNAME/$PCAP_SGI_LOG_FILE & -fi +#ethtool -A $MME_INTERFACE_NAME_FOR_S1_MME autoneg off rx off tx off" +#ethtool -G $MME_INTERFACE_NAME_FOR_S1_MME rx 4096 tx 4096" +#ethtool -C $MME_INTERFACE_NAME_FOR_S1_MME rx-usecs 3" +#ifconfig $MME_INTERFACE_NAME_FOR_S1_MME txqueuelen 1000" -wait_process_started tshark cd $OPENAIRCN_DIR/$OBJ_DIR @@ -394,12 +179,12 @@ if [ "x$GNU_DEBUGGER" == "xyes" ]; then echo_success "Running with GDB" touch .gdbinit echo "file $OPENAIRCN_DIR/$OBJ_DIR/OAI_EPC/oai_epc" > ~/.gdbinit - echo "set args -K $THIS_SCRIPT_PATH/OUTPUT/$HOSTNAME/$ITTI_LOG_FILE -c $THIS_SCRIPT_PATH/$CONFIG_FILE_EPC" >> ~/.gdbinit + echo "set args -K /tmp/itti_epc.log -c $THIS_SCRIPT_PATH/$CONFIG_FILE_EPC" >> ~/.gdbinit # echo "b encode_eps_mobile_identity" >> ~/.gdbinit echo "run" >> ~/.gdbinit - gdb 2>&1 | tee $THIS_SCRIPT_PATH/OUTPUT/$HOSTNAME/$STDOUT_LOG_FILE + gdb 2>&1 | tee /tmp/stdout_epc.log else echo_success "Running without GDB" - valgrind --tool=memcheck $OPENAIRCN_DIR/$OBJ_DIR/OAI_EPC/oai_epc -K $THIS_SCRIPT_PATH/OUTPUT/$HOSTNAME/$ITTI_LOG_FILE -c $THIS_SCRIPT_PATH/$CONFIG_FILE_EPC 2>&1 | tee $THIS_SCRIPT_PATH/OUTPUT/$HOSTNAME/$STDOUT_LOG_FILE + valgrind --tool=memcheck $OPENAIRCN_DIR/$OBJ_DIR/OAI_EPC/oai_epc -K /tmp/itti_epc.log -c $THIS_SCRIPT_PATH/$CONFIG_FILE_EPC 2>&1 | tee /tmp/stdout_epc.log fi diff --git a/targets/PROJECTS/GENERIC-LTE-EPC/utils.bash b/targets/PROJECTS/GENERIC-LTE-EPC/utils.bash index ec42b1354c..e175f855ec 100755 --- a/targets/PROJECTS/GENERIC-LTE-EPC/utils.bash +++ b/targets/PROJECTS/GENERIC-LTE-EPC/utils.bash @@ -334,13 +334,13 @@ stop_openswitch_daemon() { } -check_s6a_certificate() { +check_epc_s6a_certificate() { if [ -d /usr/local/etc/freeDiameter ] then if [ -f /usr/local/etc/freeDiameter/user.cert.pem ] then full_hostname=`cat /usr/local/etc/freeDiameter/user.cert.pem | grep "Subject" | grep "CN" | cut -d '=' -f6` - if [ a$full_hostname == a`hostname`.eur ] + if [ a$full_hostname == a`hostname`.${1:-'eur'} ] then echo_success "S6A: Found valid certificate in /usr/local/etc/freeDiameter" return 1 @@ -350,8 +350,8 @@ check_s6a_certificate() { echo_error "S6A: Did not find valid certificate in /usr/local/etc/freeDiameter" echo_warning "S6A: generatting new certificate in /usr/local/etc/freeDiameter..." cd $OPENAIRCN_DIR/S6A/freediameter - ./make_certs.sh - check_s6a_certificate + ./make_certs.sh ${1:-'eur'} + check_epc_s6a_certificate ${1:-'eur'} return 1 } @@ -475,6 +475,7 @@ check_install_epc_software() { test_install_package iperf test_install_package iproute test_install_package iptables + test_install_package iptables-dev test_install_package libatlas-base-dev test_install_package libatlas-dev test_install_package libblas @@ -522,7 +523,7 @@ check_install_epc_software() { cd $OPENAIRCN_DIR/S6A/freediameter && ./install_freediameter.sh else echo_success "freediameter is installed" - check_s6a_certificate + check_epc_s6a_certificate fi test_command_install_script "asn1c" "$OPENAIRCN_DIR/SCRIPTS/install_asn1c_0.9.24.modified.bash" -- GitLab