Added comments. Moved MS/TP properties into optional. Initialized character string. Added database-revision link to device object id change. Removed malignant code.
This commit is contained in:
@@ -22,7 +22,6 @@
|
|||||||
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
*
|
*
|
||||||
*********************************************************************/
|
*********************************************************************/
|
||||||
|
|
||||||
#include <stdbool.h>
|
#include <stdbool.h>
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
@@ -118,14 +117,14 @@ static const int Device_Properties_Required[] = {
|
|||||||
PROP_SEGMENTATION_SUPPORTED,
|
PROP_SEGMENTATION_SUPPORTED,
|
||||||
PROP_APDU_TIMEOUT,
|
PROP_APDU_TIMEOUT,
|
||||||
PROP_NUMBER_OF_APDU_RETRIES,
|
PROP_NUMBER_OF_APDU_RETRIES,
|
||||||
PROP_MAX_MASTER,
|
|
||||||
PROP_MAX_INFO_FRAMES,
|
|
||||||
PROP_DEVICE_ADDRESS_BINDING,
|
PROP_DEVICE_ADDRESS_BINDING,
|
||||||
PROP_DATABASE_REVISION,
|
PROP_DATABASE_REVISION,
|
||||||
-1
|
-1
|
||||||
};
|
};
|
||||||
|
|
||||||
static const int Device_Properties_Optional[] = {
|
static const int Device_Properties_Optional[] = {
|
||||||
|
PROP_MAX_MASTER,
|
||||||
|
PROP_MAX_INFO_FRAMES,
|
||||||
PROP_DESCRIPTION,
|
PROP_DESCRIPTION,
|
||||||
PROP_LOCATION,
|
PROP_LOCATION,
|
||||||
-1
|
-1
|
||||||
@@ -161,7 +160,7 @@ static int Read_Property_Common(
|
|||||||
BACNET_READ_PROPERTY_DATA * rpdata)
|
BACNET_READ_PROPERTY_DATA * rpdata)
|
||||||
{
|
{
|
||||||
int apdu_len = BACNET_STATUS_ERROR;
|
int apdu_len = BACNET_STATUS_ERROR;
|
||||||
BACNET_CHARACTER_STRING char_string;
|
BACNET_CHARACTER_STRING char_string = {0};
|
||||||
uint8_t *apdu = NULL;
|
uint8_t *apdu = NULL;
|
||||||
|
|
||||||
if ((rpdata->application_data == NULL) ||
|
if ((rpdata->application_data == NULL) ||
|
||||||
@@ -446,7 +445,10 @@ bool Device_Set_Object_Instance_Number(
|
|||||||
bool status = true; /* return value */
|
bool status = true; /* return value */
|
||||||
|
|
||||||
if (object_id <= BACNET_MAX_INSTANCE) {
|
if (object_id <= BACNET_MAX_INSTANCE) {
|
||||||
Object_Instance_Number = object_id;
|
if (object_id != Object_Instance_Number) {
|
||||||
|
Device_Inc_Database_Revision();
|
||||||
|
Object_Instance_Number = object_id;
|
||||||
|
}
|
||||||
} else
|
} else
|
||||||
status = false;
|
status = false;
|
||||||
|
|
||||||
@@ -648,6 +650,7 @@ int Device_Read_Property_Local(
|
|||||||
}
|
}
|
||||||
apdu = rpdata->application_data;
|
apdu = rpdata->application_data;
|
||||||
switch (rpdata->object_property) {
|
switch (rpdata->object_property) {
|
||||||
|
/* object name, object id, object type are handled in Device object */
|
||||||
case PROP_DESCRIPTION:
|
case PROP_DESCRIPTION:
|
||||||
bacnet_name(NV_EEPROM_DEVICE_DESCRIPTION, &char_string,
|
bacnet_name(NV_EEPROM_DEVICE_DESCRIPTION, &char_string,
|
||||||
"BACnet Development Kit");
|
"BACnet Development Kit");
|
||||||
@@ -949,8 +952,6 @@ bool Device_Write_Property_Local(
|
|||||||
wp_data->error_code = ERROR_CODE_WRITE_ACCESS_DENIED;
|
wp_data->error_code = ERROR_CODE_WRITE_ACCESS_DENIED;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
/* not using len at this time */
|
|
||||||
len = len;
|
|
||||||
|
|
||||||
return status;
|
return status;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user