libIEC61850
1.0.0
Open-source IEC 61850 MMS/GOOSE/SV server and client library
|
Typedefs | |
typedef void(* | AttributeChangedHandler) (DataAttribute *dataAttribute, ClientConnection connection) |
callback handler to monitor client access to data attributes More... | |
typedef MmsDataAccessError(* | WriteAccessHandler) (DataAttribute *dataAttribute, MmsValue *value, ClientConnection connection, void *parameter) |
callback handler to intercept/control client access to data attributes More... | |
Enumerations | |
enum | AccessPolicy { ACCESS_POLICY_ALLOW, ACCESS_POLICY_DENY } |
Functions | |
void | IedServer_observeDataAttribute (IedServer self, DataAttribute *dataAttribute, AttributeChangedHandler handler) |
Install an observer for a data attribute. More... | |
void | IedServer_handleWriteAccess (IedServer self, DataAttribute *dataAttribute, WriteAccessHandler handler, void *parameter) |
Install a WriteAccessHandler for a data attribute. More... | |
void | IedServer_setWriteAccessPolicy (IedServer self, FunctionalConstraint fc, AccessPolicy policy) |
Change the default write access policy for functional constraint data with a specific FC. More... | |
typedef void(* AttributeChangedHandler) (DataAttribute *dataAttribute, ClientConnection connection) |
callback handler to monitor client access to data attributes
User provided callback function to observe (monitor) MMS client access to IEC 61850 data attributes. The application can install the same handler multiple times and distinguish data attributes by the dataAttribute parameter.
the | data attribute that has been written by an MMS client. |
connection | the connection object of the client connection that invoked the write operation |
typedef MmsDataAccessError(* WriteAccessHandler) (DataAttribute *dataAttribute, MmsValue *value, ClientConnection connection, void *parameter) |
callback handler to intercept/control client access to data attributes
User provided callback function to intercept/control MMS client access to IEC 61850 data attributes. The application can install the same handler multiple times and distinguish data attributes by the dataAttribute parameter. This handler can be used to perform write access control do data attributes. One application can be to allow write access only from a specific client. Another application could be to check if the value is in the allowed range before the write is accepted.
the | data attribute that has been written by an MMS client. |
the | value the client want to write to the data attribute |
connection | the connection object of the client connection that invoked the write operation |
parameter | the user provided parameter |
enum AccessPolicy |
void IedServer_handleWriteAccess | ( | IedServer | self, |
DataAttribute * | dataAttribute, | ||
WriteAccessHandler | handler, | ||
void * | parameter | ||
) |
Install a WriteAccessHandler for a data attribute.
This instructs the server to monitor write attempts by MMS clients to specific data attributes. If a client tries to write to the monitored data attribute the handler is invoked. The handler can decide if the write access will be allowed or denied. If a WriteAccessHandler is set for a specific data attribute - the default write access policy will not be performed for that data attribute.
self | the instance of IedServer to operate on. |
dataAttribute | the data attribute to monitor |
handler | the callback function that is invoked if a client tries to write to the monitored data attribute. |
parameter | a user provided parameter that is passed to the WriteAccessHandler when called. |
void IedServer_observeDataAttribute | ( | IedServer | self, |
DataAttribute * | dataAttribute, | ||
AttributeChangedHandler | handler | ||
) |
Install an observer for a data attribute.
This instructs the server to monitor write attempts by MMS clients to specific data attributes. If a successful write attempt happens the server will call the provided callback function to inform the application. This can be used to monitor important configuration values.
self | the instance of IedServer to operate on. |
dataAttribute | the data attribute to monitor |
handler | the callback function that is invoked if a client has written to the monitored data attribute. |
void IedServer_setWriteAccessPolicy | ( | IedServer | self, |
FunctionalConstraint | fc, | ||
AccessPolicy | policy | ||
) |
Change the default write access policy for functional constraint data with a specific FC.
self | the instance of IedServer to operate on. |
fc | the FC for which to change the default write access policy. |
policy | the new policy to apply. |