7892eb13a8
CIP codec (#564): PatchU16 bounds guard; CipReply content equality; CipPath port/length/ASCII/odd/oversize validation with ArgumentException for malformed tag names and routes; CipPath.MessageRouter/ConnectionManager are now ReadOnlySpan<byte>; refused Forward Open surfaces ForwardOpenRefusedException with structured general/extended status; test CaptureFile uses BinaryPrimitives. EncapsulationClient (#565): frame write bounded by the exchange timeout, which faults (never cancels) the connection; finite positive timeouts enforced at every entry point; gate wait bounded by the timeout; deterministic reorder of the 300 ms test; new dispose-during-drain, gate-wait and RegisterSession zero-context tests. Claude-Session: https://claude.ai/code/session_01Ef2ozxS7QPanGT8uoATbTe
10 lines
425 B
C#
10 lines
425 B
C#
namespace ZB.MOM.WW.OtOpcUa.Driver.Ab.Transport;
|
|
|
|
/// <summary>Thrown by both AB transports. <see cref="Status"/> drives OPC UA status mapping and the
|
|
/// driver's "controller answered, don't throttle the device" classification (05/STAB-8).</summary>
|
|
public class AbTransportException(AbStatus status, string message, Exception? inner = null)
|
|
: Exception(message, inner)
|
|
{
|
|
public AbStatus Status { get; } = status;
|
|
}
|