IEC850: Driver crash when executing GETALL, GETDIFF and GETNEW commands in Service Engine

IEC850: Driver crash when executing GETALL, GETDIFF and GETNEW commands in Service Engine

Summary

The IEC850 driver (850-client) can terminate unexpectedly when executing GETALL, GETDIFF or GETNEW command for File Transfer. This is caused by a not compliant with the IEC 61850 standard response from the IED (850-sever). This has been fixed.

Description

In accordance with the standard, when an 850-client requests the ACSI Service GetServerDirectory(FILE-SYSTEM), the IED must respond with the list of the file names (with path). In this list the pure directory names (only paths, without file names) are not allowed. This means that each entry in the list should have a timestamp - the mandatory LastModified item in the file attributes. If an IED response contains entries about directories and timestamp is missing, the IEC850 driver can terminate unexpectedly.

This behavior has been modified. The IEC850 driver has been hardened against incorrect GetServerDirectory responses. If IED does not provide a file name, this entry will be ignored. This also means that in this case GETALL or DIR will result in no files being transferred.

To benefit from this fix:

  • Update your zenon Software Platform to the latest build of zenon 11 or higher.


Item ID: 250843
Version: 10.00 Build: 232665