Re: [oe] [meta-networking][PATCH] lldpd: Add recipe
Hi Otavio, I see there's a new version to look at but this is the thread where the discussion is happening that I want to continue, so here we go. :-) [Re: [oe] [meta-networking][PATCH] lldpd: Add recipe] On 15.09.15 (Tue 17:33) Otavio Salvador wrote: > Hello Joe, > > On Tue, Sep 15, 2015 at 3:04 PM, Joe MacDonald <joe_macdon...@mentor.com> > wrote: > > [[oe] [meta-networking][PATCH] lldpd: Add recipe] On 15.09.15 (Tue 14:54) > > Fabio Berton wrote: > > > >> From: Fabio Berton <fabio.ber...@ossystems.com.br> > >> > >> lldpd is a 802.1AB implementation, a L2 network discovery protocol. > >> It also supports CDP, EDP and various other protocols. > > > > I haven't looked at this in great detail yet, but it appears like it > > would provide the same functionality as lldpad, already in > > meta-networking: > > > > commit 6781f9b5dc60bbd39727aeaa74c13dd31eb73838 > > Author: Qian Lei <qianl.f...@cn.fujitsu.com> > > Date: Thu Dec 11 17:36:20 2014 +0800 > > > > lldpad: Add new recipe > > > > LLDPAD contains the Linux user space daemon and configuration tool for > > Intel LLDP Agent with Enhanced Ethernet support for the Data Center. > > > > Signed-off-by: Qian Lei <qianl.f...@cn.fujitsu.com> > > Signed-off-by: Martin Jansa <martin.ja...@gmail.com> > > > > I've no objection to carrying two different implementations, > > particularly if one is more complete than the other or if one is more > > actively developed, but I do have a couple of requests for you given > > that you're the second one on the scene. > > It seems the lldpd is way more actively maintained. We have a customer > using this in an environment with some thousands of network devices > with great success and we wished to upstream the recipe and avoid > maintaining a closed recipe for no reason. I'm good with that. Coming from a carrier background I know that frequent updates does not necessarily mean more stable, but actively developed with real-world users is convincing enough for me to merge this. > >- Can you update your recipe (and the other, if necessary) to provide > > an appropriate PROVIDES / CONFLICTS variable? > > I am not sure we should. Being two alternatives nothing blocks someone > to install both. I thought about that, but the question in my mind is does it make sense to install both? If they both tried to start up at boot via initscripts/systemd, would they conflict with each other or do they manage that gracefully? I really don't know. > To be honest, maybe this one could replace the old one for > meta-network future users, if Qian Lei agrees. I'd really like that, if it turns out lldpad is a reasonable subset of lldpd functionality. Either way I'll take a look at the latest patch set and if there's anything specific in there I have to comment on, I will, otherwise we'll give everyone else on the list a bit of time to respond and then make a call about the specifics of merging this. -- -Joe MacDonald. :wq signature.asc Description: Digital signature -- ___ Openembedded-devel mailing list Openembedded-devel@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-devel
[oe] [meta-networking][PATCH] lldpd: Add recipe
From: Fabio Bertonlldpd is a 802.1AB implementation, a L2 network discovery protocol. It also supports CDP, EDP and various other protocols. Signed-off-by: Fabio Berton --- .../recipes-connectivity/lldpd/files/lldpd.default | 2 + .../recipes-connectivity/lldpd/files/lldpd.init.d | 130 + .../recipes-connectivity/lldpd/lldpd_0.7.15.bb | 65 +++ 3 files changed, 197 insertions(+) create mode 100644 meta-networking/recipes-connectivity/lldpd/files/lldpd.default create mode 100644 meta-networking/recipes-connectivity/lldpd/files/lldpd.init.d create mode 100644 meta-networking/recipes-connectivity/lldpd/lldpd_0.7.15.bb diff --git a/meta-networking/recipes-connectivity/lldpd/files/lldpd.default b/meta-networking/recipes-connectivity/lldpd/files/lldpd.default new file mode 100644 index 000..3acacfd --- /dev/null +++ b/meta-networking/recipes-connectivity/lldpd/files/lldpd.default @@ -0,0 +1,2 @@ +# Uncomment to start SNMP subagent and enable CDP, SONMP and EDP protocol +#DAEMON_ARGS="-x -c -s -e" diff --git a/meta-networking/recipes-connectivity/lldpd/files/lldpd.init.d b/meta-networking/recipes-connectivity/lldpd/files/lldpd.init.d new file mode 100644 index 000..2d88d25 --- /dev/null +++ b/meta-networking/recipes-connectivity/lldpd/files/lldpd.init.d @@ -0,0 +1,130 @@ +#! /bin/sh +### BEGIN INIT INFO +# Provides: lldpd +# Required-Start:$remote_fs $network $syslog +# Required-Stop: $network $remote_fs $syslog +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: LLDP daemon +# Description: lldpd is a 802.1AB implementation, a L2 network +#discovery protocol. It also supports CDP, EDP and +#various other protocols. +### END INIT INFO + +# Do NOT "set -e" + +log_daemon_msg() { +echo $* +} + +log_end_msg() { +if [ $1 -eq 0 ]; then +success $* +else +failure $* +fi +} + +log_failure_msg() { +echo $* +} + +log_success_msg() { +echo $* +} + + +# PATH should only include /usr/* if it runs after the mountnfs.sh script +PATH=/sbin:/usr/sbin:/bin:/usr/bin +DESC="LLDP daemon" +NAME=lldpd +DAEMON=/usr/sbin/$NAME +DAEMON_ARGS="" +PIDFILE=/var/run/$NAME.pid +SCRIPTNAME=/etc/init.d/$NAME +CHROOT=/var/run/$NAME + +# Exit if the package is not installed +[ -x "$DAEMON" ] || exit 0 + +# Read configuration variable file if it is present +[ -r /etc/default/$NAME ] && . /etc/default/$NAME + +# LSB log_* functions +. /etc/init.d/functions + +do_start() +{ + start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON --test > /dev/null \ + || return 1 + start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON -- \ + $DAEMON_ARGS \ + || return 2 +} + +do_stop() +{ + start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --name $NAME + RETVAL="$?" + [ "$RETVAL" = 2 ] && return 2 + start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON + [ "$?" = 2 ] && return 2 + rm -f $PIDFILE + return "$RETVAL" +} + +do_reload() { + start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE --name $NAME + return 0 +} + +case "$1" in + start) + [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME" + do_start + case "$?" in + 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; + 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; + esac + ;; + stop) + [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME" + do_stop + case "$?" in + 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; + 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; + esac + ;; + reload) + log_daemon_msg "Reloading $DESC" "$NAME" + do_reload + log_end_msg $? + ;; + restart|force-reload) + log_daemon_msg "Restarting $DESC" "$NAME" + do_stop + case "$?" in + 0|1) + do_start + case "$?" in + 0) log_end_msg 0 ;; + 1) log_end_msg 1 ;; # Old process is still running + *) log_end_msg 1 ;; # Failed to start + esac + ;; + *) + # Failed to stop + log_end_msg 1 + ;; + esac + ;; + status) + status_of_proc $DAEMON $NAME -p $PIDFILE && exit 0 || exit $? + ;; + *) + echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload|status}" >&2 + exit 3 + ;; +esac + +: diff --git a/meta-networking/recipes-connectivity/lldpd/lldpd_0.7.15.bb b/meta-networking/recipes-connectivity/lldpd/lldpd_0.7.15.bb new file mode 100644 index 000..f68dae3 --- /dev/null +++
Re: [oe] [meta-networking][PATCH] lldpd: Add recipe
Hi Fabio, [[oe] [meta-networking][PATCH] lldpd: Add recipe] On 15.09.15 (Tue 14:54) Fabio Berton wrote: > From: Fabio Berton <fabio.ber...@ossystems.com.br> > > lldpd is a 802.1AB implementation, a L2 network discovery protocol. > It also supports CDP, EDP and various other protocols. I haven't looked at this in great detail yet, but it appears like it would provide the same functionality as lldpad, already in meta-networking: commit 6781f9b5dc60bbd39727aeaa74c13dd31eb73838 Author: Qian Lei <qianl.f...@cn.fujitsu.com> Date: Thu Dec 11 17:36:20 2014 +0800 lldpad: Add new recipe LLDPAD contains the Linux user space daemon and configuration tool for Intel LLDP Agent with Enhanced Ethernet support for the Data Center. Signed-off-by: Qian Lei <qianl.f...@cn.fujitsu.com> Signed-off-by: Martin Jansa <martin.ja...@gmail.com> I've no objection to carrying two different implementations, particularly if one is more complete than the other or if one is more actively developed, but I do have a couple of requests for you given that you're the second one on the scene. - Can we move your recipe to sit beside the other lldp daemon? (That is, in recipes-daemons) - Can you update your recipe (and the other, if necessary) to provide an appropriate PROVIDES / CONFLICTS variable? -J. > > Signed-off-by: Fabio Berton <fabio.ber...@ossystems.com.br> > --- > .../recipes-connectivity/lldpd/files/lldpd.default | 2 + > .../recipes-connectivity/lldpd/files/lldpd.init.d | 130 > + > .../recipes-connectivity/lldpd/lldpd_0.7.15.bb | 65 +++ > 3 files changed, 197 insertions(+) > create mode 100644 > meta-networking/recipes-connectivity/lldpd/files/lldpd.default > create mode 100644 > meta-networking/recipes-connectivity/lldpd/files/lldpd.init.d > create mode 100644 meta-networking/recipes-connectivity/lldpd/lldpd_0.7.15.bb > > diff --git a/meta-networking/recipes-connectivity/lldpd/files/lldpd.default > b/meta-networking/recipes-connectivity/lldpd/files/lldpd.default > new file mode 100644 > index 000..3acacfd > --- /dev/null > +++ b/meta-networking/recipes-connectivity/lldpd/files/lldpd.default > @@ -0,0 +1,2 @@ > +# Uncomment to start SNMP subagent and enable CDP, SONMP and EDP protocol > +#DAEMON_ARGS="-x -c -s -e" > diff --git a/meta-networking/recipes-connectivity/lldpd/files/lldpd.init.d > b/meta-networking/recipes-connectivity/lldpd/files/lldpd.init.d > new file mode 100644 > index 000..2d88d25 > --- /dev/null > +++ b/meta-networking/recipes-connectivity/lldpd/files/lldpd.init.d > @@ -0,0 +1,130 @@ > +#! /bin/sh > +### BEGIN INIT INFO > +# Provides: lldpd > +# Required-Start:$remote_fs $network $syslog > +# Required-Stop: $network $remote_fs $syslog > +# Default-Start: 2 3 4 5 > +# Default-Stop: 0 1 6 > +# Short-Description: LLDP daemon > +# Description: lldpd is a 802.1AB implementation, a L2 network > +#discovery protocol. It also supports CDP, EDP and > +#various other protocols. > +### END INIT INFO > + > +# Do NOT "set -e" > + > +log_daemon_msg() { > +echo $* > +} > + > +log_end_msg() { > +if [ $1 -eq 0 ]; then > +success $* > +else > +failure $* > +fi > +} > + > +log_failure_msg() { > +echo $* > +} > + > +log_success_msg() { > +echo $* > +} > + > + > +# PATH should only include /usr/* if it runs after the mountnfs.sh script > +PATH=/sbin:/usr/sbin:/bin:/usr/bin > +DESC="LLDP daemon" > +NAME=lldpd > +DAEMON=/usr/sbin/$NAME > +DAEMON_ARGS="" > +PIDFILE=/var/run/$NAME.pid > +SCRIPTNAME=/etc/init.d/$NAME > +CHROOT=/var/run/$NAME > + > +# Exit if the package is not installed > +[ -x "$DAEMON" ] || exit 0 > + > +# Read configuration variable file if it is present > +[ -r /etc/default/$NAME ] && . /etc/default/$NAME > + > +# LSB log_* functions > +. /etc/init.d/functions > + > +do_start() > +{ > + start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON > --test > /dev/null \ > + || return 1 > + start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON -- \ > + $DAEMON_ARGS \ > + || return 2 > +} > + > +do_stop() > +{ > + start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile > $PIDFILE --name $NAME > + RETVAL="$?" > + [ "$RETVAL" = 2 ] && return 2 > + start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec > $DAEMON > + [ "$?" = 2 ] && return
Re: [oe] [meta-networking][PATCH] lldpd: Add recipe
Hello Joe, On Tue, Sep 15, 2015 at 3:04 PM, Joe MacDonald <joe_macdon...@mentor.com> wrote: > [[oe] [meta-networking][PATCH] lldpd: Add recipe] On 15.09.15 (Tue 14:54) > Fabio Berton wrote: > >> From: Fabio Berton <fabio.ber...@ossystems.com.br> >> >> lldpd is a 802.1AB implementation, a L2 network discovery protocol. >> It also supports CDP, EDP and various other protocols. > > I haven't looked at this in great detail yet, but it appears like it > would provide the same functionality as lldpad, already in > meta-networking: > > commit 6781f9b5dc60bbd39727aeaa74c13dd31eb73838 > Author: Qian Lei <qianl.f...@cn.fujitsu.com> > Date: Thu Dec 11 17:36:20 2014 +0800 > > lldpad: Add new recipe > > LLDPAD contains the Linux user space daemon and configuration tool for > Intel LLDP Agent with Enhanced Ethernet support for the Data Center. > > Signed-off-by: Qian Lei <qianl.f...@cn.fujitsu.com> > Signed-off-by: Martin Jansa <martin.ja...@gmail.com> > > I've no objection to carrying two different implementations, > particularly if one is more complete than the other or if one is more > actively developed, but I do have a couple of requests for you given > that you're the second one on the scene. It seems the lldpd is way more actively maintained. We have a customer using this in an environment with some thousands of network devices with great success and we wished to upstream the recipe and avoid maintaining a closed recipe for no reason. >- Can we move your recipe to sit beside the other lldp daemon? (That > is, in recipes-daemons) I think it does make sense. Fabio, can you please do so? >- Can you update your recipe (and the other, if necessary) to provide > an appropriate PROVIDES / CONFLICTS variable? I am not sure we should. Being two alternatives nothing blocks someone to install both. To be honest, maybe this one could replace the old one for meta-network future users, if Qian Lei agrees. -- Otavio Salvador O.S. Systems http://www.ossystems.com.brhttp://code.ossystems.com.br Mobile: +55 (53) 9981-7854Mobile: +1 (347) 903-9750 -- ___ Openembedded-devel mailing list Openembedded-devel@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-devel