[Buildroot] [PATCH] radvd: improve startup script
Carlos Santos
casantos at datacom.ind.br
Wed Sep 27 01:15:35 UTC 2017
----- Original Message -----
> From: "Arnout Vandecappelle" <arnout at mind.be>
> To: "Carlos Santos" <casantos at datacom.ind.br>, buildroot at buildroot.org
> Sent: Tuesday, September 26, 2017 7:26:20 PM
> Subject: Re: [Buildroot] [PATCH] radvd: improve startup script
> On 25-09-17 11:57, Carlos Santos wrote:
>> The previous script caused a failure if /etc/radvd.conf did not exist.
>
> That's a good thing, no? If you select radvd but forget to install a
> configuration file, you'll want to have some kind of warning rather than
> silently not starting it.
Not exactly. There is no default configuration and the daemon may be
started later by other services using a configuration created at run-time.
In this particular I'm targeting libvirt, which uses both radvd and dnsmasq
this way.
>>
>> This is a simple copy/paste/edit of package/dnsmasq/S80dnsmasq.
>
> Perhaps not the best example...
>
>>
>> Signed-off-by: Carlos Santos <casantos at datacom.ind.br>
>> ---
>> package/radvd/S50radvd | 36 ++++++++++++++++++++++--------------
>> 1 file changed, 22 insertions(+), 14 deletions(-)
>>
>> diff --git a/package/radvd/S50radvd b/package/radvd/S50radvd
>> index 9f1407c..dcc2af6 100755
>> --- a/package/radvd/S50radvd
>> +++ b/package/radvd/S50radvd
>> @@ -1,18 +1,26 @@
>> #!/bin/sh
>>
>> -RADVD=/usr/sbin/radvd
>> +[ -x /usr/sbin/radvd ] || exit 0
>
> This we certainly don't want. If the executable is missing, we want to shout
> loudly, not silently skip it.
>
>> +[ -f /etc/radvd.conf ] || exit 0
>>
>> -echo "1" > /proc/sys/net/ipv6/conf/all/forwarding
>
> Why remove this? It should of course move to the start stanza.
Correct.
>> +case "$1" in
>> + start)
>> + printf "Starting radvd: "
>> + start-stop-daemon -S -x /usr/sbin/radvd
>> + [ $? = 0 ] && echo "OK" || echo "FAI> + ;;
>> + stop)
>> + printf "Stopping radvd: "
>> + start-stop-daemon -K -q -x /usr/sbin/radvd
>> + [ $? = 0 ] && echo "OK" || echo "FAIL"
>> + ;;
>> + restart|reload)
>> + $0 stop
>> + $0 start
>> + ;;
>> + *)
>> + echo "Usage: $0 {start|stop|restart}"
>> + exit 1
>> +esac
>
> This part looks good.
>
> Regards,
> Arnout
--
Carlos Santos (Casantos) - DATACOM, P&D
“The greatest triumph that modern PR can offer is the transcendent
success of having your words and actions judged by your reputation,
rather than the other way about.” — Christopher Hitchens
More information about the buildroot
mailing list