From 902ca28056e8f08d62a3857a2e933d38736f8d9c Mon Sep 17 00:00:00 2001 From: Michael Zillgith Date: Sat, 26 Dec 2015 11:20:27 +0100 Subject: [PATCH] - fixed problem: GI without activated GI trigger option --- src/hal/socket/linux/socket_linux.c | 2 +- src/iec61850/server/mms_mapping/reporting.c | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/hal/socket/linux/socket_linux.c b/src/hal/socket/linux/socket_linux.c index fc01f75d..b00423dd 100644 --- a/src/hal/socket/linux/socket_linux.c +++ b/src/hal/socket/linux/socket_linux.c @@ -316,7 +316,7 @@ Socket_connect(Socket self, const char* address, int port) activateTcpNoDelay(self); -#if CONFIG_ACTIVATE_TCP_KEEPALIVE == 1 +#if (CONFIG_ACTIVATE_TCP_KEEPALIVE == 1) activateKeepAlive(self->fd); #endif diff --git a/src/iec61850/server/mms_mapping/reporting.c b/src/iec61850/server/mms_mapping/reporting.c index ab3d67e5..bb875100 100644 --- a/src/iec61850/server/mms_mapping/reporting.c +++ b/src/iec61850/server/mms_mapping/reporting.c @@ -1315,8 +1315,10 @@ Reporting_RCBWriteAccessHandler(MmsMapping* self, ReportControl* rc, char* eleme if (strcmp(elementName, "GI") == 0) { if ((rc->enabled) && (rc->clientConnection == connection)) { - if (MmsValue_getBoolean(value)) - rc->gi = true; + if (MmsValue_getBoolean(value)) { + if (rc->triggerOps & TRG_OPT_GI) + rc->gi = true; + } retVal = DATA_ACCESS_ERROR_SUCCESS; goto exit_function;