From 17446168669bc4645feef4ad26a4ef992a952780 Mon Sep 17 00:00:00 2001 From: Michael Zillgith Date: Fri, 3 Apr 2020 18:14:29 +0200 Subject: [PATCH] - IEC 61850 server: RCB - fixed problem that other client can "steal" reservation --- src/iec61850/server/mms_mapping/reporting.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/iec61850/server/mms_mapping/reporting.c b/src/iec61850/server/mms_mapping/reporting.c index b93af1f6c..f679ab40e 100644 --- a/src/iec61850/server/mms_mapping/reporting.c +++ b/src/iec61850/server/mms_mapping/reporting.c @@ -1365,6 +1365,11 @@ Reporting_RCBWriteAccessHandler(MmsMapping* self, ReportControl* rc, char* eleme } } + if ((rc->reserved) && (rc->clientConnection != connection)) { + retVal = DATA_ACCESS_ERROR_TEMPORARILY_UNAVAILABLE; + goto exit_function; + } + if (strcmp(elementName, "RptEna") == 0) { if (value->value.boolean == true) {