From eb31da81a8c7e3be3244aebda1466d77bab74075 Mon Sep 17 00:00:00 2001 From: Michael Zillgith Date: Fri, 25 Sep 2015 07:53:34 -0300 Subject: [PATCH 1/2] - added ControlObjectClient_setOrigin to VS def files --- src/vs/libiec61850-wo-goose.def | 1 + src/vs/libiec61850.def | 1 + 2 files changed, 2 insertions(+) diff --git a/src/vs/libiec61850-wo-goose.def b/src/vs/libiec61850-wo-goose.def index 8f30508..52b7ad6 100644 --- a/src/vs/libiec61850-wo-goose.def +++ b/src/vs/libiec61850-wo-goose.def @@ -490,3 +490,4 @@ EXPORTS ClientReport_getBufOvfl MmsValue_getUtcTimeInMsWithUs IedModel_setIedNameForDynamicModel + ControlObjectClient_setOrigin diff --git a/src/vs/libiec61850.def b/src/vs/libiec61850.def index fa29b64..d0189d8 100644 --- a/src/vs/libiec61850.def +++ b/src/vs/libiec61850.def @@ -514,3 +514,4 @@ EXPORTS ClientReport_getBufOvfl MmsValue_getUtcTimeInMsWithUs IedModel_setIedNameForDynamicModel + ControlObjectClient_setOrigin From 0bc0fd94ed3a29df648fff6d87de9341bbd9b892 Mon Sep 17 00:00:00 2001 From: Michael Zillgith Date: Fri, 9 Oct 2015 15:22:47 +0200 Subject: [PATCH 2/2] - fixed bug in get name list service when client sends wrong domain name --- src/mms/iso_mms/server/mms_get_namelist_service.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/mms/iso_mms/server/mms_get_namelist_service.c b/src/mms/iso_mms/server/mms_get_namelist_service.c index fcd3b66..0bb0af1 100644 --- a/src/mms/iso_mms/server/mms_get_namelist_service.c +++ b/src/mms/iso_mms/server/mms_get_namelist_service.c @@ -436,9 +436,12 @@ mmsServer_handleGetNameListRequest( else if (objectClass == OBJECT_CLASS_NAMED_VARIABLE_LIST) { LinkedList nameList = getNamedVariableListsDomainSpecific(connection, domainSpecificName); - createNameListResponse(connection, invokeId, nameList, response, continueAfter); - - LinkedList_destroy(nameList); + if (nameList == NULL) + mmsServer_createConfirmedErrorPdu(invokeId, response, MMS_ERROR_ACCESS_OBJECT_NON_EXISTENT); + else { + createNameListResponse(connection, invokeId, nameList, response, continueAfter); + LinkedList_destroy(nameList); + } } #endif /* (MMS_DATA_SET_SERVICE == 1) */ @@ -447,7 +450,6 @@ mmsServer_handleGetNameListRequest( mmsServer_createConfirmedErrorPdu(invokeId, response, MMS_ERROR_ACCESS_OBJECT_ACCESS_UNSUPPORTED); } - } else if (objectScope == OBJECT_SCOPE_VMD) { /* vmd-specific */