Details
Description
When a I/O connection is openend towards a consuming assembly with a very short receive timeout and config data for an configuration assembly (passed to the host) is included in the connection path, then the connection may be deleted by the receive timeout handler before the host replied and the connection which is currently being opened is not valid anymore when the host returns.
Solution: Do not start receive timeout handler before the host has processed configuration data. Instead, start the receive timeout just before we send the forward open reply on the bus.
Also, consider to unify the control flows of EipCm_ForwardOpen() and EipCm_ForwardOpenNotifyCB() which have lots of duplicated code in their bodies.