Control Measures
================
**Coverage:** 50.0% (2 of 4 items OK)
.. _lobster-item-8ba2f56cc9d8b54d4297b3847b32354ad567a203:
.. dropdown:: [MISSING] TRLC Controlmeasure MessagePassing.BE\_MessageTooBig
:open:
:class-title: sd-bg-danger sd-text-white
.. pull-quote::
The component shall enforce the configured max\_send\_size, max\_reply\_size, and max\_notify\_size limits on every client send path and every server Reply and Notify path.
.. raw:: html
**Traces to:**
.. card::
:class-card: lobster-issue-card
* missing reference to Root Causes
.. raw:: html
**Source:** `score/message\_passing/dependability/safety\_analysis/control\_measures.trlc:43:25 `__
.. _lobster-item-d0b61519b0e18820cc0a4d2fa81d987ed3d2d0c7:
.. dropdown:: [MISSING] TRLC Controlmeasure MessagePassing.BE\_SendQueueExhausted
:open:
:class-title: sd-bg-danger sd-text-white
.. pull-quote::
The component shall use a pre-allocated, bounded pool for asynchronous client send messages and return an error when the pool is exhausted without blocking or silently dropping the message.
.. raw:: html
**Traces to:**
* :ref:`ClientConnectionTest:GivenTrulyAsyncWhenSendIsCalledItIsQueued `
* :ref:`ClientConnectionTest:SendIsNotQueuedIfTrulyAsyncButNoSlots `
* :ref:`ClientConnectionTest:SendWaitReplyFailsWhenCannotQueueMessage `
* :ref:`ClientConnectionTest:SendWithCallbackFailsWhenCannotQueueMessage `
* :ref:`ClientConnectionTest:SendWithCallbackFailsWhenCannotQueueMessageTrulyAsync `
* :ref:`ClientConnectionTest:SendWithCallbackStillHasItsSlotBusyWhenQueuedSendHappensTrulyAsync `
.. card::
:class-card: lobster-issue-card
* missing reference to Root Causes
.. raw:: html
**Source:** `score/message\_passing/dependability/safety\_analysis/control\_measures.trlc:52:25 `__
.. _lobster-item-a6d90a4f3f29bad1c3304acea059e30b50724844:
.. dropdown:: [OK] TRLC Controlmeasure MessagePassing.OsIpcFaultHandling
:class-title: sd-bg-success sd-text-white
.. pull-quote::
The component shall detect OS IPC transport failures by checking the return value of every OS call.
.. raw:: html
**Traces to:**
* :ref:`ClientConnectionTest:SuccessfullyConnectingAtFirstAttemptThenFirstReadDisconnected `
* :ref:`ClientConnectionTest:SuccessfullyConnectingAtFirstAttemptThenSpuriousReadGetsIgnored `
* :ref:`ClientConnectionTest:SendWaitReplyFailsWhenCannotSendMessageDirectly `
* :ref:`ClientConnectionTest:SendWaitReplyFailsDirectlyButUnblocksQueue `
* :ref:`ClientConnectionTest:SendWaitReplyFailsWhenQueuedMessageCancels `
* :ref:`ClientConnectionTest:SendWithCallbackFailsWhenCannotSendMessageDirectly `
* :ref:`ClientConnectionTest:SendWithCallbackReportsFailureWhenQueuedSendFailsTrulyAsync `
* :ref:`ClientConnectionTest:QueuedSendsCancelIfConnectionClosed `
* :ref:`ClientConnectionTest:ConnectedStopsIfReceivesIoError `
* :ref:`ClientConnectionTest:ConnectedStopsIfReceivesInvalidCode `
* :ref:`ClientConnectionTest:ConnectedStopsIfReceivesReplyWithoutSend `
* :ref:`MessagePassing.OsIpcFaultHandling `
.. raw:: html
**Source:** `score/message\_passing/dependability/safety\_analysis/control\_measures.trlc:25:25 `__
.. _lobster-item-4ebf2ae9aa6f2ab21542db0ed11cb9e415a1e75c:
.. dropdown:: [OK] TRLC Controlmeasure MessagePassing.SendBufferArgumentValidation
:class-title: sd-bg-success sd-text-white
.. pull-quote::
The component shall validate all arguments of Send, SendWaitReply, and SendWithCallback before any IPC operation is initiated.
.. raw:: html
**Traces to:**
* :ref:`ClientConnectionTest:NotConnectedSendNotReady `
* :ref:`ClientConnectionTest:SendWaitReplyFailsWhenCalledInCallback `
* :ref:`MessagePassing.SendBufferArgumentValidation `
.. raw:: html
**Source:** `score/message\_passing/dependability/safety\_analysis/control\_measures.trlc:34:25 `__