From 21c66d3512d2086325b3d4dc67b47503bdda2c13 Mon Sep 17 00:00:00 2001 From: Joe LeVeque Date: Tue, 24 Apr 2018 00:51:30 +0000 Subject: [PATCH 1/2] [radvd] Ensure at least one interface is specified in radvd.conf before starting radvd --- dockers/docker-router-advertiser/start.sh | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/dockers/docker-router-advertiser/start.sh b/dockers/docker-router-advertiser/start.sh index 7fcaf65a79c9..48c4e54dfe77 100755 --- a/dockers/docker-router-advertiser/start.sh +++ b/dockers/docker-router-advertiser/start.sh @@ -14,5 +14,12 @@ fi # Generate /etc/radvd.conf config file sonic-cfggen -d -t /usr/share/sonic/templates/radvd.conf.j2 > /etc/radvd.conf +# Enusre at least one interface is specified in radvd.conf +NUM_IFACES=$(grep -c "^interface" /etc/radvd.conf) +if [ $NUM_IFACES -eq 0 ]; then + echo "No interfaces specified in radvd.conf. Not starting router advertiser process." + exit 0 +fi + # Start the router advertiser supervisorctl start radvd From 7c4ad2e81b8607d0376395eeb25573b4f9e529d8 Mon Sep 17 00:00:00 2001 From: Joe LeVeque Date: Tue, 24 Apr 2018 17:54:13 +0000 Subject: [PATCH 2/2] Grep for space after 'interface' to make more strict --- dockers/docker-router-advertiser/start.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dockers/docker-router-advertiser/start.sh b/dockers/docker-router-advertiser/start.sh index 48c4e54dfe77..159006a176bd 100755 --- a/dockers/docker-router-advertiser/start.sh +++ b/dockers/docker-router-advertiser/start.sh @@ -15,7 +15,7 @@ fi sonic-cfggen -d -t /usr/share/sonic/templates/radvd.conf.j2 > /etc/radvd.conf # Enusre at least one interface is specified in radvd.conf -NUM_IFACES=$(grep -c "^interface" /etc/radvd.conf) +NUM_IFACES=$(grep -c "^interface " /etc/radvd.conf) if [ $NUM_IFACES -eq 0 ]; then echo "No interfaces specified in radvd.conf. Not starting router advertiser process." exit 0