Change in osmo-bts[master]: OML: Store merged attributes of IPA OML Managed Objects

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.

Harald Welte gerrit-no-reply at lists.osmocom.org
Tue Feb 12 19:59:06 UTC 2019


Harald Welte has uploaded this change for review. ( https://gerrit.osmocom.org/12893


Change subject: OML: Store merged attributes of IPA OML Managed Objects
......................................................................

OML: Store merged attributes of IPA OML Managed Objects

For the TS 12.21 standard OML attributes, we store a copy of the
most-recently set value for each attribute in "mo->nm_attr".  This
somehow was missed when adding support for the IPA specific MOs like
those relevant for GPRS.

Change-Id: I75ebda46da9c1fcecc484311bf3833f31c536ee1
---
M src/common/oml.c
1 file changed, 12 insertions(+), 2 deletions(-)



  git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/93/12893/1

diff --git a/src/common/oml.c b/src/common/oml.c
index e544b57..7e7a2fe 100644
--- a/src/common/oml.c
+++ b/src/common/oml.c
@@ -1308,8 +1308,8 @@
 static int oml_ipa_set_attr(struct gsm_bts *bts, struct msgb *msg)
 {
 	struct abis_om_fom_hdr *foh = msgb_l3(msg);
-	const struct gsm_abis_mo *mo;
-	struct tlv_parsed tp;
+	struct gsm_abis_mo *mo;
+	struct tlv_parsed tp, *tp_merged;
 	void *obj;
 	int rc;
 
@@ -1333,7 +1333,17 @@
 	if (!mo || !obj)
 		return oml_fom_ack_nack(msg, NM_NACK_OBJINST_UNKN);
 
+	/* merge existing MO attributes with new attributes */
+	tp_merged = osmo_tlvp_copy(mo->nm_attr, bts);
+	osmo_tlvp_merge(tp_merged, &tp);
+
 	rc = oml_ipa_mo_set_attr(bts, mo, obj, &tp);
+	if (rc == 0) {
+		/* Success: replace old MO attributes with new */
+		talloc_free(mo->nm_attr);
+		mo->nm_attr = tp_merged;
+	} else
+		talloc_free(tp_merged);
 
 	return oml_fom_ack_nack(msg, rc);
 }

-- 
To view, visit https://gerrit.osmocom.org/12893
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings

Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: I75ebda46da9c1fcecc484311bf3833f31c536ee1
Gerrit-Change-Number: 12893
Gerrit-PatchSet: 1
Gerrit-Owner: Harald Welte <laforge at gnumonks.org>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20190212/fcd670f8/attachment.htm>


More information about the gerrit-log mailing list