system: fix path for node removal
Fix wrong path for node deletion when a link is deleted. Remove the
trailing slash which resulted in an error in libyang and the program
crashed because of an uncaught exception.
16.777 [393546 system T] Netlink update on link 'veth1', action DEL
16.777 [393546 main T] Processing node deletion /ietf-interfaces:interfaces/interface[name='veth1']/
libyang[0]: Unexpected character(s) '
terminate called after throwing an instance of 'std::runtime_error'
what(): Unexpected character(s) '
Fixes: f10b930 ("system: Implement ietf-interfaces")
Change-Id: I06abd2f67f6ca6d5ee8bfb871526ccb9a40ee675
diff --git a/src/system/IETFInterfaces.cpp b/src/system/IETFInterfaces.cpp
index caf470e..1b05861 100644
--- a/src/system/IETFInterfaces.cpp
+++ b/src/system/IETFInterfaces.cpp
@@ -130,7 +130,7 @@
m_log->trace("Netlink update on link '{}', action {}", name, nlActionToString(action));
if (action == NL_ACT_DEL) {
- utils::valuesPush({}, {IETF_INTERFACES + "/interface[name='" + name + "']/"}, m_srSession, SR_DS_OPERATIONAL);
+ utils::valuesPush({}, {IETF_INTERFACES + "/interface[name='" + name + "']"}, m_srSession, SR_DS_OPERATIONAL);
} else if (action == NL_ACT_CHANGE || action == NL_ACT_NEW) {
std::map<std::string, std::string> values;
std::vector<std::string> deletePaths;