From patchwork Mon Aug 17 15:22:41 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alexandru Ardelean X-Patchwork-Id: 508000 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from arrakis.dune.hu (arrakis.dune.hu [78.24.191.176]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 1E89714012C for ; Tue, 18 Aug 2015 01:23:55 +1000 (AEST) Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b=VrTGA9x6; dkim-atps=neutral Received: from arrakis.dune.hu (localhost [127.0.0.1]) by arrakis.dune.hu (Postfix) with ESMTP id 9FE9F28C17C; Mon, 17 Aug 2015 17:22:22 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on arrakis.dune.hu X-Spam-Level: X-Spam-Status: No, score=-1.5 required=5.0 tests=BAYES_00,FREEMAIL_FROM, T_DKIM_INVALID autolearn=unavailable version=3.3.2 Received: from arrakis.dune.hu (localhost [127.0.0.1]) by arrakis.dune.hu (Postfix) with ESMTP id 848D928C17B for ; Mon, 17 Aug 2015 17:22:10 +0200 (CEST) X-policyd-weight: using cached result; rate: -8.5 Received: from mail-wi0-f181.google.com (mail-wi0-f181.google.com [209.85.212.181]) by arrakis.dune.hu (Postfix) with ESMTPS for ; Mon, 17 Aug 2015 17:22:10 +0200 (CEST) Received: by wijp15 with SMTP id p15so77851557wij.0 for ; Mon, 17 Aug 2015 08:22:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=mvQkTpnLUUBJlbhyqR1qlNWVznEKr41IIZ7cFUf4Y20=; b=VrTGA9x6F9PRXl2lPwICMbtkj5klQ+Bgk7ggLAPZ67nm4vnkWRJSR/pJ6p3QnzKGUE G0tDCorK55UXR6cso0Mg8dIwpbiWBGEn5oXKOZziNoKq1E7IA4i9lMPhJCLnkcbMricZ WC+AUnelviWzl++k/Lf2vqDBaSm0gZkfPXxHmcQIKbiiQu8sYAl8ihocsT6CTqe+spSa jwhhEseBoK+wDuWNnHzS8XfxuebtrOtanDavnLGhKz/XqrnSvEidPOTGEY8KsdbY4tgU mg2cNB/gF6uNMotCpP2eSiV1y01oy6mEFu6qR6mwTM2nnBKKTqFnBqwakJcNkr1GGrza xBhQ== X-Received: by 10.194.201.71 with SMTP id jy7mr3657456wjc.93.1439824976336; Mon, 17 Aug 2015 08:22:56 -0700 (PDT) Received: from orion.ocedo.cluj.local ([5.2.198.78]) by smtp.gmail.com with ESMTPSA id lj2sm16966223wic.1.2015.08.17.08.22.55 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Mon, 17 Aug 2015 08:22:55 -0700 (PDT) From: Alexandru Ardelean X-Google-Original-From: Alexandru Ardelean To: openwrt-devel@lists.openwrt.org Date: Mon, 17 Aug 2015 18:22:41 +0300 Message-Id: <1439824962-5559-3-git-send-email-aa@ocedo.com> X-Mailer: git-send-email 2.1.4 In-Reply-To: <1439824962-5559-1-git-send-email-aa@ocedo.com> References: <1439824962-5559-1-git-send-email-aa@ocedo.com> Cc: Alexandru Ardelean Subject: [OpenWrt-Devel] [PATCH 3/4] lldpd: conversion of init script to procd format X-BeenThere: openwrt-devel@lists.openwrt.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: OpenWrt Development List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: openwrt-devel-bounces@lists.openwrt.org Sender: "openwrt-devel" And add respawn param (the main reason for this conversion). Signed-off-by: Alexandru Ardelean --- package/network/services/lldpd/files/lldpd.init | 31 ++++++++++++++----------- 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/package/network/services/lldpd/files/lldpd.init b/package/network/services/lldpd/files/lldpd.init index bd957b6..fca0ebf 100644 --- a/package/network/services/lldpd/files/lldpd.init +++ b/package/network/services/lldpd/files/lldpd.init @@ -3,7 +3,7 @@ START=90 -SERVICE_USE_PID=1 +USE_PROCD=1 find_release_info() { @@ -14,7 +14,7 @@ find_release_info() echo "${DISTRIB_DESCRIPTION:-Unknown OpenWrt release} @ $(cat /proc/sys/kernel/hostname)" } -start() { +start_service() { . /lib/functions/network.sh local enable_cdp @@ -50,19 +50,24 @@ start() { mkdir -p /var/run/lldp chown lldp:lldp /var/run/lldp - [ -n "$ifnames" ] && append args "-I $ifnames" - [ $enable_cdp -gt 0 ] && append args '-c' - [ $enable_fdp -gt 0 ] && append args '-f' - [ $enable_sonmp -gt 0 ] && append args '-s' - [ $enable_edp -gt 0 ] && append args '-e' - [ $readonly_mode -gt 0 ] && append args '-r' + procd_open_instance + procd_set_param command /usr/sbin/lldpd + procd_append_param command -d # don't daemonize, procd will handle that for us - service_start /usr/sbin/lldpd $args \ - ${lldp_class:+ -M $lldp_class} \ - ${lldp_description:+ -S "$lldp_description"} + [ -n "$ifnames" ] && procd_append_param command "-I $ifnames" + [ $enable_cdp -gt 0 ] && procd_append_param command '-c' + [ $enable_fdp -gt 0 ] && procd_append_param command '-f' + [ $enable_sonmp -gt 0 ] && procd_append_param command '-s' + [ $enable_edp -gt 0 ] && procd_append_param command '-e' + [ $readonly_mode -gt 0 ] && procd_append_param command '-r' + [ -n "$lldp_class" ] && procd_append_param command "-M $lldp_class" + [ -n "$lldp_description" ] && procd_append_param command "-S $lldp_description" + + # set auto respawn behavior + procd_set_param respawn + procd_close_instance } -stop() { - service_stop /usr/sbin/lldpd +stop_service() { rm -f /var/run/lldpd.socket /var/run/lldpd.pid }