OpENer - Open Source EtherNet/IP(TM) I/O Target Stack
2.1
|
CIP Class 3 connection. More...
Go to the source code of this file.
Typedefs | |
typedef EipStatus(* | CipConnectionStateHandler )(CipConnectionObject *RESTRICT const connection_object, ConnectionObjectState new_state) |
Functions | |
EipStatus | CipClass3ConnectionObjectStateEstablishedHandler (CipConnectionObject *RESTRICT const connection_object, ConnectionObjectState new_state) |
EipStatus | EstablishClass3Connection (CipConnectionObject *RESTRICT const connection_object, EipUint16 *const extended_error) |
Check if Class3 connection is available and if yes setup all data. More... | |
void | InitializeClass3ConnectionData (void) |
Initializes the explicit connections mechanism. More... | |
CIP Class 3 connection.
Definition in file cipclass3connection.h.
typedef EipStatus(* CipConnectionStateHandler)(CipConnectionObject *RESTRICT const connection_object, ConnectionObjectState new_state) |
Definition at line 35 of file cipclass3connection.h.
EipStatus CipClass3ConnectionObjectStateEstablishedHandler | ( | CipConnectionObject *RESTRICT const | connection_object, |
ConnectionObjectState | new_state | ||
) |
Definition at line 76 of file cipclass3connection.c.
References ConnectionObjectInitializeEmpty(), ConnectionObjectSetState(), kConnectionObjectStateNonExistent, kEipStatusError, and kEipStatusOk.
EipStatus EstablishClass3Connection | ( | CipConnectionObject *RESTRICT const | connection_object, |
EipUint16 *const | extended_error | ||
) |
Check if Class3 connection is available and if yes setup all data.
This function can be called after all data has been parsed from the forward open request
connection_object | pointer to the connection object structure holding the parsed data from the forward open request |
extended_error | the extended error code in case an error happened |
Definition at line 26 of file cipclass3connection.c.
References AddNewActiveConnection(), Class3ConnectionTimeoutHandler(), CloseConnection(), cip_connection_object::connection_close_function, cip_connection_object::connection_timeout_function, ConnectionObjectDeepCopy(), ConnectionObjectGeneralConfiguration(), ConnectionObjectSetInstanceType(), GetFreeExplicitConnection(), kCipErrorConnectionFailure, kConnectionManagerExtendedStatusCodeErrorNoMoreConnectionsAvailable, kConnectionObjectInstanceTypeExplicitMessaging, and kEipStatusOk.
Referenced by ConnectionManagerInit().
void InitializeClass3ConnectionData | ( | void | ) |
Initializes the explicit connections mechanism.
Prepares the available explicit connection slots for use at the start of the OpENer
Definition at line 71 of file cipclass3connection.c.
References OPENER_CIP_NUM_EXPLICIT_CONNS.
Referenced by InitializeConnectionManagerData().