From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.haj.ipfire.org (localhost [IPv6:::1]) by mail02.haj.ipfire.org (Postfix) with ESMTP id 4d2Sp76Rgmz339n for ; Thu, 06 Nov 2025 16:49:19 +0000 (UTC) Received: from mail01.ipfire.org (mail01.haj.ipfire.org [IPv6:2001:678:b28::25]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mail01.haj.ipfire.org", Issuer "R12" (verified OK)) by mail02.haj.ipfire.org (Postfix) with ESMTPS id 4d2Sp01GCDz337H for ; Thu, 06 Nov 2025 16:49:12 +0000 (UTC) Received: from michael.haj.ipfire.org (michael.haj.ipfire.org [172.28.1.242]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519) (Client CN "michael.haj.ipfire.org", Issuer "E7" (verified OK)) by mail01.ipfire.org (Postfix) with ESMTPS id 4d2Snx1Kggz3mn; Thu, 06 Nov 2025 16:49:09 +0000 (UTC) Received: by michael.haj.ipfire.org (Postfix, from userid 0) id 4d2Snw6jnFzThDY; Thu, 06 Nov 2025 16:49:08 +0000 (UTC) From: Michael Tremer To: development@lists.ipfire.org Cc: Michael Tremer Subject: [PATCH 2/6] misc-progs: Add lldpdctrl Date: Thu, 6 Nov 2025 16:46:52 +0000 Message-ID: <20251106164907.1484873-3-michael.tremer@ipfire.org> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20251106164907.1484873-1-michael.tremer@ipfire.org> References: <20251106164907.1484873-1-michael.tremer@ipfire.org> Precedence: list List-Id: List-Subscribe: , List-Unsubscribe: , List-Post: List-Help: Sender: Mail-Followup-To: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Signed-off-by: Michael Tremer --- config/rootfiles/common/misc-progs | 1 + src/misc-progs/Makefile | 2 +- src/misc-progs/lldpdctrl.c | 35 ++++++++++++++++++++++++++++++ 3 files changed, 37 insertions(+), 1 deletion(-) create mode 100644 src/misc-progs/lldpdctrl.c diff --git a/config/rootfiles/common/misc-progs b/config/rootfiles/common/misc-progs index b92a1e32a..2c846878a 100644 --- a/config/rootfiles/common/misc-progs +++ b/config/rootfiles/common/misc-progs @@ -13,6 +13,7 @@ usr/local/bin/getipstat #usr/local/bin/iowrap usr/local/bin/ipfirereboot usr/local/bin/ipsecctrl +usr/local/bin/lldpdctrl usr/local/bin/logwatch #usr/local/bin/mpfirectrl usr/local/bin/openvpnctrl diff --git a/src/misc-progs/Makefile b/src/misc-progs/Makefile index 9d380c158..4c994638a 100644 --- a/src/misc-progs/Makefile +++ b/src/misc-progs/Makefile @@ -32,7 +32,7 @@ SUID_PROGS = squidctrl sshctrl ipfirereboot \ smartctrl clamavctrl addonctrl pakfire wlanapctrl \ setaliases urlfilterctrl updxlratorctrl fireinfoctrl rebuildroutes \ getconntracktable wirelessclient torctrl ddnsctrl unboundctrl \ - captivectrl wireguardctrl + captivectrl wireguardctrl lldpdctrl OBJS = $(patsubst %,%.o,$(PROGS) $(SUID_PROGS)) diff --git a/src/misc-progs/lldpdctrl.c b/src/misc-progs/lldpdctrl.c new file mode 100644 index 000000000..8ae0d9d97 --- /dev/null +++ b/src/misc-progs/lldpdctrl.c @@ -0,0 +1,35 @@ +/* This file is part of the IPFire Firewall. + * + * This program is distributed under the terms of the GNU General Public + * Licence. See the file COPYING for details. + * + */ + +#include +#include + +#include "setuid.h" + +int main(int argc, char** argv) { + // Become root + if (!initsetuid()) + exit(1); + + // Check if we have enough arguments + if (argc < 2) { + fprintf(stderr, "\nNot enough arguments.\n\n"); + exit(1); + } + + if (strcmp(argv[1], "start") == 0) + return run("/etc/rc.d/init.d/lldpd", argv + 1); + + else if (strcmp(argv[1], "stop") == 0) + return run("/etc/rc.d/init.d/lldpd", argv + 1); + + else if (strcmp(argv[1], "restart") == 0) + return run("/etc/rc.d/init.d/lldpd", argv + 1); + + fprintf(stderr, "Invalid command\n"); + exit(1); +} -- 2.47.3