Add sentinel value to terminate the SUPPORTED_OBJECT_TABLE #11
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Because of how the bacnet-stack works, it is recommended to terminate the
SUPPORTED_OBJECT_TABLE
with a sentinel value that indicates the end.Steve Karg's usual way is to set the last value of the list to a value completely null with the exception of the type in which is set
MAX_BACNET_OBJECT_TYPE
. See bacnet-stackdevice.c
as an example of this. There the other values are set toNULL
, but the only value required because it is normally the first one to be checked is the type.This change is to make your BACnet application more robust, because depending of the system and the compilation, it can causes issues, like segmentation faults (@BACnetEd, fix me if I am wrong or something additional to comment).
Note: as it is a small change, we prefer to keep it simple and clean. This commit is done in a branch with the latest of your
main
branch.