Bugfix/add makefile lint fix warnings (#39)
* fix warnings indicated by scan-build lint tool * add lint target to makefile using scan-build tool * add lint into build script stages (note: uses scan-build-7) * fix potential use of memory after it is freed
This commit is contained in:
@@ -394,7 +394,8 @@ uint32_t bacfile_instance_from_tsm(uint8_t invokeID)
|
||||
len = apdu_decode_confirmed_service_request(&apdu[0], apdu_len,
|
||||
&service_data, &service_choice, &service_request,
|
||||
&service_request_len);
|
||||
if (service_choice == SERVICE_CONFIRMED_ATOMIC_READ_FILE) {
|
||||
if ((len > 0) &&
|
||||
(service_choice == SERVICE_CONFIRMED_ATOMIC_READ_FILE)) {
|
||||
len = arf_decode_service_request(
|
||||
service_request, service_request_len, &data);
|
||||
if (len > 0) {
|
||||
|
||||
@@ -1213,8 +1213,10 @@ bool Channel_Present_Value_Set(
|
||||
if (wp_data->priority != 6 /* reserved */) {
|
||||
status =
|
||||
Channel_Value_Copy(&Channel[index].Present_Value, value);
|
||||
(void)status;
|
||||
status = Channel_Write_Members(
|
||||
&Channel[index], value, wp_data->priority);
|
||||
(void)status;
|
||||
status = true;
|
||||
} else {
|
||||
/* Command priority 6 is reserved for use by Minimum On/Off
|
||||
|
||||
@@ -1757,11 +1757,11 @@ void Device_COV_Clear(BACNET_OBJECT_TYPE object_type, uint32_t object_instance)
|
||||
#if defined(INTRINSIC_REPORTING)
|
||||
void Device_local_reporting(void)
|
||||
{
|
||||
struct object_functions *pObject;
|
||||
uint32_t objects_count;
|
||||
uint32_t object_instance;
|
||||
BACNET_OBJECT_TYPE object_type;
|
||||
uint32_t idx;
|
||||
struct object_functions *pObject = NULL;
|
||||
uint32_t objects_count = 0;
|
||||
uint32_t object_instance = 0;
|
||||
BACNET_OBJECT_TYPE object_type = OBJECT_NONE;
|
||||
uint32_t idx = 0;
|
||||
|
||||
objects_count = Device_Object_List_Count();
|
||||
|
||||
|
||||
@@ -901,7 +901,11 @@ bool Load_Control_Write_Property(BACNET_WRITE_PROPERTY_DATA *wp_data)
|
||||
len = bacapp_decode_context_data(wp_data->application_data,
|
||||
wp_data->application_data_len, &value,
|
||||
PROP_REQUESTED_SHED_LEVEL);
|
||||
if (value.context_tag == 0) {
|
||||
if (len == BACNET_STATUS_ERROR) {
|
||||
/* error! */
|
||||
wp_data->error_class = ERROR_CLASS_PROPERTY;
|
||||
wp_data->error_code = ERROR_CODE_INVALID_DATA_TYPE;
|
||||
} else if (value.context_tag == 0) {
|
||||
/* percent - Unsigned */
|
||||
Requested_Shed_Level[object_index].type =
|
||||
BACNET_SHED_TYPE_PERCENT;
|
||||
|
||||
@@ -1034,6 +1034,15 @@ int Lighting_Output_Read_Property(BACNET_READ_PROPERTY_DATA *rpdata)
|
||||
} else {
|
||||
len = encode_application_null(&apdu[apdu_len]);
|
||||
}
|
||||
/* add it if we have room */
|
||||
if ((apdu_len + len) < MAX_APDU) {
|
||||
apdu_len += len;
|
||||
} else {
|
||||
rpdata->error_code =
|
||||
ERROR_CODE_ABORT_SEGMENTATION_NOT_SUPPORTED;
|
||||
apdu_len = BACNET_STATUS_ABORT;
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
rpdata->error_class = ERROR_CLASS_PROPERTY;
|
||||
rpdata->error_code = ERROR_CODE_INVALID_ARRAY_INDEX;
|
||||
|
||||
@@ -930,9 +930,12 @@ bool Network_Port_IP_Subnet(
|
||||
if (index < BACNET_NETWORK_PORTS_MAX) {
|
||||
if (Object_List[index].Network_Type == PORT_TYPE_BIP) {
|
||||
prefix = Object_List[index].Network.IPv4.IP_Subnet_Prefix;
|
||||
mask = (0xFFFFFFFF << (32 - prefix)) & 0xFFFFFFFF;
|
||||
encode_unsigned32(ip_mask, mask);
|
||||
status = octetstring_init(subnet_mask, ip_mask, sizeof(ip_mask));
|
||||
if ((prefix > 0) && (prefix <= 32)) {
|
||||
mask = (0xFFFFFFFF << (32 - prefix)) & 0xFFFFFFFF;
|
||||
encode_unsigned32(ip_mask, mask);
|
||||
status = octetstring_init(subnet_mask, ip_mask,
|
||||
sizeof(ip_mask));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -979,7 +982,7 @@ bool Network_Port_IP_Subnet_Prefix_Set(uint32_t object_instance, uint8_t value)
|
||||
index = Network_Port_Instance_To_Index(object_instance);
|
||||
if (index < BACNET_NETWORK_PORTS_MAX) {
|
||||
if (Object_List[index].Network_Type == PORT_TYPE_BIP) {
|
||||
if (value <= 32) {
|
||||
if ((value > 0) && (value <= 32)) {
|
||||
if (Object_List[index].Network.IPv4.IP_Subnet_Prefix != value) {
|
||||
Object_List[index].Changes_Pending = true;
|
||||
}
|
||||
@@ -1423,7 +1426,7 @@ bool Network_Port_IPv6_Subnet_Prefix_Set(
|
||||
index = Network_Port_Instance_To_Index(object_instance);
|
||||
if (index < BACNET_NETWORK_PORTS_MAX) {
|
||||
if (Object_List[index].Network_Type == PORT_TYPE_BIP6) {
|
||||
if (value <= 128) {
|
||||
if ((value > 0) && (value <= 128)) {
|
||||
if (Object_List[index].Network.IPv6.IP_Subnet_Prefix != value) {
|
||||
Object_List[index].Changes_Pending = true;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user