Skip to content

remove GetLastSenderId() API and replace with a RecvMsg() API that returns the AppId of the sender of the message being received #759

@CDKnightNASA

Description

@CDKnightNASA

Describe the bug
The current CFE_SB_GetLastSenderId() API is broken, as indicated in #745 and #744, but also as discussed at today's CCB, the intent and use-case is really "who sent this message" not "who sent the last message" on a pipe. In fact, SBN is currently using this API to prevent SBN message loops, and this API doesn't work correctly for that purpose.

Expected behavior
The suggestion is to remove the GetLastSenderId() API entirely, and add a new receive method like: int32 CFE_SB_RcvMsgWithSenderId(CFE_SB_MsgPtr_t *BufPtr, uint32 *SenderAppIdPtr, CFE_SB_PipeId_t PipeId, int32 TimeOut); that has an additional out parameter which will contain the AppId of the app that sent the message returned in the BufPtr.

Reporter Info
[email protected]

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions