From 09b8cd5c566dca3420f073f9588f419cfc8a75bc Mon Sep 17 00:00:00 2001 From: sunwoo-choi <83573488+sunwoo-choi@users.noreply.github.com> Date: Fri, 10 Feb 2023 13:29:03 +0900 Subject: [PATCH] trk originatorID set trk originatorID set --- src/iec61850/server/mms_mapping/control.c | 28 +++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/src/iec61850/server/mms_mapping/control.c b/src/iec61850/server/mms_mapping/control.c index 05d2d074..39b08c20 100644 --- a/src/iec61850/server/mms_mapping/control.c +++ b/src/iec61850/server/mms_mapping/control.c @@ -398,6 +398,8 @@ updateGenericTrackingObjectValues(MmsMapping* self, ControlObject* controlObject if (trkInst->errorCode) MmsValue_setInt32(trkInst->errorCode->mmsValue, errVal); + + char objRef[129]; @@ -418,6 +420,32 @@ updateGenericTrackingObjectValues(MmsMapping* self, ControlObject* controlObject static void unselectObject(ControlObject* self, SelectStateChangedReason reason, MmsMapping* mmsMapping); +static bool +convertIPv4AddressStringToByteArray(const char* clientAddressString, uint8_t ipV4Addr[]) +{ + int addrElementCount = 0; + + char* separator = (char*) clientAddressString; + + while (separator != NULL && addrElementCount < 4) { + int intVal = atoi(separator); + + ipV4Addr[addrElementCount] = intVal; + + separator = strchr(separator, '.'); + + if (separator != NULL) + separator++; /* skip '.' character */ + + addrElementCount ++; + } + + if (addrElementCount == 4) + return true; + else + return false; +} + static void updateNextControlTimeout(MmsMapping* self, uint64_t timeout) {