From b9a8d65e619c934b0dec4ff81058b379693bc235 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mattias=20Walstr=C3=B6m?= Date: Fri, 24 May 2024 09:39:20 +0200 Subject: [PATCH] libsrx: Remove srx_require_module API Not needed anymore since all YANG modules should be loaded at build. --- src/confd/src/core.c | 1 - src/confd/src/ietf-hardware.c | 1 - src/confd/src/ietf-interfaces.c | 1 - src/confd/src/ietf-routing.c | 1 - src/confd/src/ietf-system.c | 2 +- src/confd/src/infix-containers.c | 1 - src/confd/src/infix-dhcp.c | 11 -------- src/confd/src/infix-factory.c | 1 - src/confd/src/infix-services.c | 12 -------- src/libsrx/src/Makefile.am | 3 +- src/libsrx/src/common.h | 2 +- src/libsrx/src/srx_module.c | 48 -------------------------------- src/libsrx/src/srx_module.h | 20 ------------- 13 files changed, 3 insertions(+), 101 deletions(-) delete mode 100644 src/libsrx/src/srx_module.c delete mode 100644 src/libsrx/src/srx_module.h diff --git a/src/confd/src/core.c b/src/confd/src/core.c index 3fade65f..fa478b33 100644 --- a/src/confd/src/core.c +++ b/src/confd/src/core.c @@ -1,6 +1,5 @@ /* SPDX-License-Identifier: BSD-3-Clause */ -#include #include #include "core.h" diff --git a/src/confd/src/ietf-hardware.c b/src/confd/src/ietf-hardware.c index 53b20328..37143954 100644 --- a/src/confd/src/ietf-hardware.c +++ b/src/confd/src/ietf-hardware.c @@ -3,7 +3,6 @@ #include #include -#include #include #include #include diff --git a/src/confd/src/ietf-interfaces.c b/src/confd/src/ietf-interfaces.c index 858a1a7f..fce1c2d2 100644 --- a/src/confd/src/ietf-interfaces.c +++ b/src/confd/src/ietf-interfaces.c @@ -8,7 +8,6 @@ #include #include -#include #include #include "core.h" diff --git a/src/confd/src/ietf-routing.c b/src/confd/src/ietf-routing.c index 586651b6..ecf28eb0 100644 --- a/src/confd/src/ietf-routing.c +++ b/src/confd/src/ietf-routing.c @@ -2,7 +2,6 @@ #include #include -#include #include #include "core.h" diff --git a/src/confd/src/ietf-system.c b/src/confd/src/ietf-system.c index f7a20e93..7fa0e66b 100644 --- a/src/confd/src/ietf-system.c +++ b/src/confd/src/ietf-system.c @@ -12,7 +12,7 @@ #include #include -#include + #include #include "base64.h" diff --git a/src/confd/src/infix-containers.c b/src/confd/src/infix-containers.c index 9b99d580..415dff3c 100644 --- a/src/confd/src/infix-containers.c +++ b/src/confd/src/infix-containers.c @@ -10,7 +10,6 @@ #include #include -#include #include #include "core.h" diff --git a/src/confd/src/infix-dhcp.c b/src/confd/src/infix-dhcp.c index 43d63e2b..431a468c 100644 --- a/src/confd/src/infix-dhcp.c +++ b/src/confd/src/infix-dhcp.c @@ -9,7 +9,6 @@ #include #include -#include #include #include "core.h" @@ -18,12 +17,6 @@ #define XPATH "/infix-dhcp-client:dhcp-client" #define CACHE_TEMPLATE "/var/lib/misc/%s.cache" -static const struct srx_module_requirement reqs[] = { - { .dir = YANG_PATH_, .name = MODULE, .rev = "2024-01-30" }, - { NULL } -}; - - static char *ip_cache(const char *ifname, char *str, size_t len) { @@ -407,10 +400,6 @@ int infix_dhcp_init(struct confd *confd) { int rc; - rc = srx_require_modules(confd->conn, reqs); - if (rc) - goto fail; - REGISTER_CHANGE(confd->session, MODULE, XPATH, 0, change, confd, &confd->sub); REGISTER_CHANGE(confd->cand, MODULE, XPATH"//.", SR_SUBSCR_UPDATE, cand, confd, &confd->sub); diff --git a/src/confd/src/infix-factory.c b/src/confd/src/infix-factory.c index 8cecfe6b..c793a71f 100644 --- a/src/confd/src/infix-factory.c +++ b/src/confd/src/infix-factory.c @@ -10,7 +10,6 @@ #include #include -#include #include #include "core.h" diff --git a/src/confd/src/infix-services.c b/src/confd/src/infix-services.c index 70ff6039..356766ca 100644 --- a/src/confd/src/infix-services.c +++ b/src/confd/src/infix-services.c @@ -10,7 +10,6 @@ #include #include -#include #include #include "core.h" @@ -51,13 +50,6 @@ struct mdns_svc { { ssh, "ssh", "_ssh._tcp", 22, "Secure shell command line interface (CLI)", NULL }, }; -static const struct srx_module_requirement reqs[] = { - { .dir = YANG_PATH_, .name = "infix-services", .rev = "2024-04-08" }, - { .dir = YANG_PATH_, .name = "ieee802-dot1ab-lldp", .rev = "2022-03-15" }, - { .dir = YANG_PATH_, .name = "infix-lldp", .rev = "2023-08-23" }, - { NULL } -}; - /* * On hostname changes we need to update the mDNS records, in particular * the ones advertising an adminurl (standarized by Apple), because they @@ -295,10 +287,6 @@ int infix_services_init(struct confd *confd) { int rc; - rc = srx_require_modules(confd->conn, reqs); - if (rc) - goto fail; - REGISTER_CHANGE(confd->session, "infix-services", "/infix-services:mdns", 0, mdns_change, confd, &confd->sub); REGISTER_MONITOR(confd->session, "ietf-system", "/ietf-system:system/hostname", diff --git a/src/libsrx/src/Makefile.am b/src/libsrx/src/Makefile.am index 1b9b1cc3..b92a5153 100644 --- a/src/libsrx/src/Makefile.am +++ b/src/libsrx/src/Makefile.am @@ -6,12 +6,11 @@ libsrx_la_LDFLAGS = $(AM_LDFLAGS) -version-info 0:0:0 libsrx_la_SOURCES = common.c common.h \ helpers.c helpers.h \ lyx.c lyx.h \ - srx_module.c srx_module.h \ srx_val.c srx_val.h \ systemv.c systemv.h pkgincludedir = $(includedir)/srx -pkginclude_HEADERS = common.h helpers.h lyx.h srx_module.h srx_val.h systemv.h +pkginclude_HEADERS = common.h helpers.h lyx.h srx_val.h systemv.h pkgconfigdir = $(libdir)/pkgconfig pkgconfig_DATA = libsrx.pc diff --git a/src/libsrx/src/common.h b/src/libsrx/src/common.h index cda9a5b9..426b7ab6 100644 --- a/src/libsrx/src/common.h +++ b/src/libsrx/src/common.h @@ -6,7 +6,7 @@ #include #include #include -#include "srx_module.h" + #include "common.h" extern int debug; diff --git a/src/libsrx/src/srx_module.c b/src/libsrx/src/srx_module.c deleted file mode 100644 index 94631ce2..00000000 --- a/src/libsrx/src/srx_module.c +++ /dev/null @@ -1,48 +0,0 @@ -/* SPDX-License-Identifier: BSD-3-Clause */ - -#include -#include - -#include "common.h" -#include "srx_module.h" - -sr_error_t srx_require_module(sr_conn_ctx_t *conn, const struct srx_module_requirement *mr) -{ - sr_error_t err = SR_ERR_OK; - char *path; - int len; - - len = asprintf(&path, "%s%s%s.yang", mr->name, mr->rev ? "@" : "", mr->rev ? : ""); - if (len == -1) { - ERROR("failed asprintf(): %s", strerror(errno)); - return SR_ERR_SYS; - } - - err = sr_install_module2(conn, path, mr->dir, mr->features, NULL, - "root", "wheel", 0660, NULL, NULL, 0); - free(path); - if (err == SR_ERR_EXISTS) { - /* Probably loaded as a dependency */ - err = 0; - - /* Ensure all requested features are enabled */ - for (int i = 0; mr->features[i]; i++) { - err = sr_enable_module_feature(conn, mr->name, mr->features[i]); - if (err) { - ERROR("failed enabling %s:%s, error %d", mr->name, mr->features[i], err); - } - } - } - - return err; -} - -sr_error_t srx_require_modules(sr_conn_ctx_t *conn, const struct srx_module_requirement *mrs) -{ - sr_error_t err = SR_ERR_OK; - - for (; mrs->name && !err; mrs++) - err = srx_require_module(conn, mrs); - - return err; -} diff --git a/src/libsrx/src/srx_module.h b/src/libsrx/src/srx_module.h deleted file mode 100644 index a544e209..00000000 --- a/src/libsrx/src/srx_module.h +++ /dev/null @@ -1,20 +0,0 @@ -/* SPDX-License-Identifier: BSD-3-Clause */ - -#ifndef CONFD_SR_EXT_H_ -#define CONFD_SR_EXT_H_ - -#include - -struct srx_module_requirement { - const char *dir; - const char *name; - const char *rev; - const char **features; -}; - -sr_error_t srx_require_module(sr_conn_ctx_t *conn, - const struct srx_module_requirement *mr); -sr_error_t srx_require_modules(sr_conn_ctx_t *conn, - const struct srx_module_requirement *mrs); - -#endif /* CONFD_SR_EXT_H_ */