22 #ifndef SRC_IEC60750_SLAVE_H_
23 #define SRC_IEC60750_SLAVE_H_
28 #include "tls_config.h"
168 CS101_PLUGIN_RESULT_NOT_HANDLED = 0,
169 CS101_PLUGIN_RESULT_HANDLED = 1,
170 CS101_PLUGIN_RESULT_INVALID_ASDU = 2
171 } CS101_SlavePlugin_Result;
struct sCS101_SlavePlugin * CS101_SlavePlugin
Plugin interface for CS101 or CS104 slaves.
Definition: iec60870_slave.h:176
uint8_t QualifierOfCIC
QCC (Qualifier of counter interrogation command) according to IEC 60870-5-101:2003 7....
Definition: cs101_information_objects.h:185
struct sCS101_ASDU * CS101_ASDU
Application Service Data Unit (ASDU) for the CS101/CS104 application layer.
Definition: iec60870_common.h:216
struct sCS101_AppLayerParameters * CS101_AppLayerParameters
Parameters for the CS101/CS104 application layer.
Definition: iec60870_common.h:110
struct sIMasterConnection * IMasterConnection
Interface to send messages to the master (used by slave)
Definition: iec60870_slave.h:63
bool IMasterConnection_sendACT_TERM(IMasterConnection self, CS101_ASDU asdu)
Send an ACT_TERM ASDU to the client/master.
int IMasterConnection_getPeerAddress(IMasterConnection self, char *addrBuf, int addrBufSize)
Get the peer address of the master (only for CS 104)
bool IMasterConnection_sendACT_CON(IMasterConnection self, CS101_ASDU asdu, bool negative)
Send an ACT_CON ASDU to the client/master.
bool IMasterConnection_sendASDU(IMasterConnection self, CS101_ASDU asdu)
Send an ASDU to the client/master.
CS101_AppLayerParameters IMasterConnection_getApplicationLayerParameters(IMasterConnection self)
Get the application layer parameters used by this connection.
void IMasterConnection_close(IMasterConnection self)
Close the master connection (only for CS 104)
bool(* CS101_ResetProcessHandler)(void *parameter, IMasterConnection connection, CS101_ASDU asdu, uint8_t qrp)
Handler for reset process command (C_RP_NA_1 - 105)
Definition: iec60870_slave.h:238
bool(* CS101_ReadHandler)(void *parameter, IMasterConnection connection, CS101_ASDU asdu, int ioa)
Handler for read command (C_RD_NA_1 - 102)
Definition: iec60870_slave.h:218
bool(* CS101_InterrogationHandler)(void *parameter, IMasterConnection connection, CS101_ASDU asdu, uint8_t qoi)
Handler for interrogation command (C_IC_NA_1 - 100).
Definition: iec60870_slave.h:208
bool(* CS101_DelayAcquisitionHandler)(void *parameter, IMasterConnection connection, CS101_ASDU asdu, CP16Time2a delayTime)
Handler for delay acquisition command (C_CD_NA:1 - 106)
Definition: iec60870_slave.h:243
bool(* CS101_CounterInterrogationHandler)(void *parameter, IMasterConnection connection, CS101_ASDU asdu, QualifierOfCIC qcc)
Handler for counter interrogation command (C_CI_NA_1 - 101).
Definition: iec60870_slave.h:213
bool(* CS101_ASDUHandler)(void *parameter, IMasterConnection connection, CS101_ASDU asdu)
Handler for ASDUs that are not handled by other handlers (default handler)
Definition: iec60870_slave.h:248
void(* CS101_ResetCUHandler)(void *parameter)
Handler will be called when a link layer reset CU (communication unit) message is received.
Definition: iec60870_slave.h:203
bool(* CS101_ClockSynchronizationHandler)(void *parameter, IMasterConnection connection, CS101_ASDU asdu, CP56Time2a newTime)
Handler for clock synchronization command (C_CS_NA_1 - 103)
Definition: iec60870_slave.h:233
Common definitions for IEC 60870-5-101/104 These types are used by CS101/CS104 master and slaves.
Definition: iec60870_common.h:231
Definition: iec60870_common.h:255
Definition: iec60870_common.h:112
Definition: iec60870_slave.h:179
Definition: iec60870_slave.h:65