diff --git a/src/bacnet/datalink/bsc/bsc-datalink.c b/src/bacnet/datalink/bsc/bsc-datalink.c index 30295732..1bef723a 100644 --- a/src/bacnet/datalink/bsc/bsc-datalink.c +++ b/src/bacnet/datalink/bsc/bsc-datalink.c @@ -307,8 +307,8 @@ uint16_t bsc_receive( uint16_t pdu_len = 0; uint16_t npdu16_len = 0; BVLC_SC_DECODED_MESSAGE dm; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; const char *err_desc = NULL; static uint8_t buf[BVLC_SC_NPDU_SIZE_CONF]; @@ -334,11 +334,12 @@ uint16_t bsc_receive( } else { FIFO_Pull(&bsc_fifo, buf, npdu16_len); if (!bvlc_sc_decode_message( - buf, npdu16_len, &dm, &error, &class, &err_desc)) { + buf, npdu16_len, &dm, &error_code, &error_class, + &err_desc)) { PRINTF( "bsc_receive() pdu of size %d is dropped because " "of err = %d, class %d, desc = %s\n", - npdu16_len, error, class, err_desc); + npdu16_len, error_code, error_class, err_desc); bsc_remove_packet(npdu16_len); } else { if (dm.hdr.origin && diff --git a/src/bacnet/datalink/bsc/bsc-node-switch.c b/src/bacnet/datalink/bsc/bsc-node-switch.c index 0d1b2a61..ad16c779 100644 --- a/src/bacnet/datalink/bsc/bsc-node-switch.c +++ b/src/bacnet/datalink/bsc/bsc-node-switch.c @@ -409,8 +409,8 @@ static void node_switch_acceptor_socket_event( { uint8_t *p_pdu; BSC_NODE_SWITCH_CTX *ctx; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_class; + uint16_t error_code; const char *err_desc; bool res = true; @@ -430,7 +430,8 @@ static void node_switch_acceptor_socket_event( memcpy(p_pdu, pdu, pdu_len); pdu_len = bvlc_sc_set_orig(&p_pdu, pdu_len, &c->vmac); res = bvlc_sc_decode_message( - p_pdu, pdu_len, decoded_pdu, &error, &class, &err_desc); + p_pdu, pdu_len, decoded_pdu, &error_code, &error_class, + &err_desc); if (res) { ctx->event_func( BSC_NODE_SWITCH_EVENT_RECEIVED, ctx, ctx->user_arg, @@ -721,8 +722,8 @@ static void node_switch_initiator_socket_event( uint8_t *p_pdu = NULL; BSC_NODE_SWITCH_CTX *ns; int elem; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_class; + uint16_t error_code; const char *err_desc; bool res; @@ -745,7 +746,8 @@ static void node_switch_initiator_socket_event( memcpy(p_pdu, pdu, pdu_len); pdu_len = bvlc_sc_set_orig(&p_pdu, pdu_len, &c->vmac); res = bvlc_sc_decode_message( - p_pdu, pdu_len, decoded_pdu, &error, &class, &err_desc); + p_pdu, pdu_len, decoded_pdu, &error_code, &error_class, + &err_desc); if (res) { ns->event_func( BSC_NODE_SWITCH_EVENT_RECEIVED, ns, ns->user_arg, NULL, diff --git a/src/bacnet/datalink/bsc/bsc-node.c b/src/bacnet/datalink/bsc/bsc-node.c index 72576453..b7904b3c 100644 --- a/src/bacnet/datalink/bsc/bsc-node.c +++ b/src/bacnet/datalink/bsc/bsc-node.c @@ -27,12 +27,6 @@ #define DEBUG_PRINTF debug_printf_disabled #endif -#define ERROR_STR_OPTION_NOT_UNDERSTOOD \ - "'must understand' option not understood " - -#define ERROR_STR_DIRECT_CONNECTIONS_NOT_SUPPORTED \ - "direct connections are not supported" - typedef enum { BSC_NODE_STATE_IDLE = 0, BSC_NODE_STATE_STARTING = 1, @@ -452,6 +446,10 @@ static void bsc_node_process_received( uint16_t error_class; uint16_t error_code; BSC_ADDRESS_RESOLUTION *r; + const char *error_must_understand_option_string = + "'must understand' option not understood "; + const char *error_direct_connections_unsupported_string = + "direct connections are not supported"; (void)ret; DEBUG_PRINTF( @@ -470,7 +468,8 @@ static void bsc_node_process_received( buf, sizeof(buf), decoded_pdu->hdr.message_id, NULL, decoded_pdu->hdr.origin, decoded_pdu->hdr.bvlc_function, 1, &decoded_pdu->dest_options[i].packed_header_marker, - &error_class, &error_code, ERROR_STR_OPTION_NOT_UNDERSTOOD); + &error_class, &error_code, + error_must_understand_option_string); if (bufsize) { ret = bsc_node_send(node, buf, bufsize); #if DEBUG_ENABLED == 1 @@ -586,7 +585,7 @@ static void bsc_node_process_received( buf, sizeof(buf), decoded_pdu->hdr.message_id, NULL, decoded_pdu->hdr.origin, decoded_pdu->hdr.bvlc_function, 1, NULL, &error_class, &error_code, - ERROR_STR_DIRECT_CONNECTIONS_NOT_SUPPORTED); + error_direct_connections_unsupported_string); if (bufsize) { ret = bsc_node_send(node, buf, bufsize); #if DEBUG_ENABLED == 1 diff --git a/src/bacnet/datalink/bsc/bsc-socket.c b/src/bacnet/datalink/bsc/bsc-socket.c index 6f3d4ef7..9026db3e 100644 --- a/src/bacnet/datalink/bsc/bsc-socket.c +++ b/src/bacnet/datalink/bsc/bsc-socket.c @@ -240,7 +240,7 @@ static bool bsc_prepare_error_extended( uint8_t *error_header_marker, BACNET_ERROR_CLASS error_class, BACNET_ERROR_CODE error_code, - const uint8_t *utf8_details_string) + const char *utf8_details_string) { uint16_t eclass = (uint16_t)error_class; uint16_t ecode = (uint16_t)error_code; @@ -318,7 +318,7 @@ static bool bsc_prepare_protocol_error_extended( uint8_t *error_header_marker, BACNET_ERROR_CLASS error_class, BACNET_ERROR_CODE error_code, - const uint8_t *utf8_details_string) + const char *utf8_details_string) { if (bvlc_sc_need_send_bvlc_result(dm)) { return bsc_prepare_error_extended( @@ -346,7 +346,7 @@ static bool bsc_prepare_protocol_error( BACNET_SC_VMAC_ADDRESS *dest, BACNET_ERROR_CLASS error_class, BACNET_ERROR_CODE error_code, - const uint8_t *utf8_details_string) + const char *utf8_details_string) { return bsc_prepare_protocol_error_extended( c, dm, origin, dest, NULL, error_class, error_code, @@ -565,8 +565,8 @@ static void bsc_process_socket_state( bool *need_send) { bool expired; - BACNET_ERROR_CODE code; - BACNET_ERROR_CLASS class; + uint16_t error_class; + uint16_t error_code; const char *err_desc = NULL; bool valid = true; size_t len; @@ -578,17 +578,19 @@ static void bsc_process_socket_state( if (rx_buf) { if (!bvlc_sc_decode_message( - rx_buf, rx_buf_size, dm, &code, &class, &err_desc)) { + rx_buf, rx_buf_size, dm, &error_code, &error_class, + &err_desc)) { /* we use this error code+class to indicate that the received bvlc message has length less than 4 octets. According EA-001-4 'Clarifying BVLC-Result in BACnet/SC 'If a BVLC message is received that has fewer than four octets, a BVLC-Result NAK shall not be returned. The message shall be discarded and not be processed.' */ - if ((code != ERROR_CODE_DISCARD) && - (class != ERROR_CLASS_COMMUNICATION)) { + if ((error_code != ERROR_CODE_DISCARD) && + (error_class != ERROR_CLASS_COMMUNICATION)) { *need_send = bsc_prepare_protocol_error( - c, dm, dm->hdr.origin, dm->hdr.dest, class, code, err_desc); + c, dm, dm->hdr.origin, dm->hdr.dest, error_class, + error_code, err_desc); } #if DEBUG_BSC_SOCKET == 1 else { @@ -614,20 +616,20 @@ static void bsc_process_socket_state( /* from hub */ if (dm->hdr.origin == NULL && dm->hdr.bvlc_function != BVLC_SC_RESULT) { - class = ERROR_CLASS_COMMUNICATION; - code = ERROR_CODE_HEADER_ENCODING_ERROR; + error_class = ERROR_CLASS_COMMUNICATION; + error_code = ERROR_CODE_HEADER_ENCODING_ERROR; *need_send = bsc_prepare_protocol_error( - c, dm, NULL, &c->vmac, class, code, + c, dm, NULL, &c->vmac, error_class, error_code, s_error_no_origin); valid = false; } else if ( dm->hdr.dest != NULL && !bvlc_sc_is_vmac_broadcast(dm->hdr.dest)) { - class = ERROR_CLASS_COMMUNICATION; - code = ERROR_CODE_HEADER_ENCODING_ERROR; + error_class = ERROR_CLASS_COMMUNICATION; + error_code = ERROR_CODE_HEADER_ENCODING_ERROR; *need_send = bsc_prepare_protocol_error( - c, dm, NULL, &c->vmac, class, code, + c, dm, NULL, &c->vmac, error_class, error_code, s_error_dest_presented); valid = false; } @@ -637,17 +639,17 @@ static void bsc_process_socket_state( /* this is a case when socket is hub function receiving */ /* from node */ if (dm->hdr.dest == NULL) { - class = ERROR_CLASS_COMMUNICATION; - code = ERROR_CODE_HEADER_ENCODING_ERROR; - + error_class = ERROR_CLASS_COMMUNICATION; + error_code = ERROR_CODE_HEADER_ENCODING_ERROR; *need_send = bsc_prepare_protocol_error( - c, dm, NULL, NULL, class, code, s_error_no_dest); + c, dm, NULL, NULL, error_class, error_code, + s_error_no_dest); valid = false; } else if (dm->hdr.origin != NULL) { - class = ERROR_CLASS_COMMUNICATION; - code = ERROR_CODE_HEADER_ENCODING_ERROR; + error_class = ERROR_CLASS_COMMUNICATION; + error_code = ERROR_CODE_HEADER_ENCODING_ERROR; *need_send = bsc_prepare_protocol_error( - c, dm, NULL, NULL, class, code, + c, dm, NULL, NULL, error_class, error_code, s_error_origin_presented); valid = false; } @@ -812,8 +814,8 @@ void bsc_socket_maintenance_timer(uint16_t seconds) static void bsc_process_srv_awaiting_request( BSC_SOCKET *c, BVLC_SC_DECODED_MESSAGE *dm, uint8_t *buf, size_t bufsize) { - BACNET_ERROR_CODE code; - BACNET_ERROR_CLASS class; + uint16_t error_class; + uint16_t error_code; BSC_SOCKET *existing = NULL; uint16_t message_id; size_t len; @@ -826,14 +828,15 @@ static void bsc_process_srv_awaiting_request( "bufsize = %d\n", c, dm, buf, bufsize); - if (!bvlc_sc_decode_message(buf, bufsize, dm, &code, &class, &err_desc)) { + if (!bvlc_sc_decode_message( + buf, bufsize, dm, &error_code, &error_class, &err_desc)) { DEBUG_PRINTF( "bsc_process_srv_awaiting_request() decoding of received message " "failed, error code = %d, class = %d\n", - code, class); + error_code, error_class); if (c->ctx->funcs->failed_request) { c->ctx->funcs->failed_request( - c->ctx, c, NULL, NULL, code, err_desc); + c->ctx, c, NULL, NULL, error_code, err_desc); } } else if (dm->hdr.bvlc_function == BVLC_SC_CONNECT_REQUEST) { existing = c->ctx->funcs->find_connection_for_uuid( @@ -1225,8 +1228,8 @@ static void bsc_dispatch_srv_func( static void bsc_process_cli_awaiting_accept( BSC_SOCKET *c, BVLC_SC_DECODED_MESSAGE *dm, uint8_t *buf, size_t bufsize) { - BACNET_ERROR_CODE code; - BACNET_ERROR_CLASS class; + uint16_t error_class; + uint16_t error_code; const char *err_desc = NULL; DEBUG_PRINTF( @@ -1234,11 +1237,12 @@ static void bsc_process_cli_awaiting_accept( "%p, bufsize = %d\n", c, dm, buf, bufsize); - if (!bvlc_sc_decode_message(buf, bufsize, dm, &code, &class, &err_desc)) { + if (!bvlc_sc_decode_message( + buf, bufsize, dm, &error_code, &error_class, &err_desc)) { DEBUG_PRINTF( "bsc_process_cli_awaiting_accept() <<< decoding failed " "code = %d, class = %d\n", - code, class); + error_code, error_class); return; } diff --git a/src/bacnet/datalink/bsc/bvlc-sc.c b/src/bacnet/datalink/bsc/bvlc-sc.c index ef90d1b2..8f836777 100644 --- a/src/bacnet/datalink/bsc/bvlc-sc.c +++ b/src/bacnet/datalink/bsc/bvlc-sc.c @@ -106,8 +106,8 @@ static const char *s_proprietary_payload = * @param out_option_headers_real_length - pointer to the real length of the * option headers * @param out_option_header_num - pointer to the number of the option headers - * @param error - pointer to the error code - * @param class - pointer to the error class + * @param error_code - pointer to the error code + * @param error_class - pointer to the error class * @param error_desc_string - pointer to the error description string * @return true if the option headers are valid, false otherwise */ @@ -117,8 +117,8 @@ static bool bvlc_sc_validate_options_headers( size_t option_headers_max_len, size_t *out_option_headers_real_length, size_t *out_option_header_num, - BACNET_ERROR_CODE *error, - BACNET_ERROR_CLASS *class, + uint16_t *error_code, + uint16_t *error_class, const char **error_desc_string) { int options_len = 0; @@ -127,8 +127,8 @@ static bool bvlc_sc_validate_options_headers( uint16_t hdr_len; if (!option_headers_max_len || !out_option_headers_real_length) { - *error = ERROR_CODE_MESSAGE_INCOMPLETE; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_MESSAGE_INCOMPLETE; + *error_class = ERROR_CLASS_COMMUNICATION; *error_desc_string = s_message_is_incompleted; return false; } @@ -144,8 +144,8 @@ static bool bvlc_sc_validate_options_headers( if (option != BVLC_SC_OPTION_TYPE_SECURE_PATH && option != BVLC_SC_OPTION_TYPE_PROPRIETARY) { - *error = ERROR_CODE_HEADER_ENCODING_ERROR; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_HEADER_ENCODING_ERROR; + *error_class = ERROR_CLASS_COMMUNICATION; *error_desc_string = s_invalid_header_option_type; return false; } @@ -155,16 +155,16 @@ static bool bvlc_sc_validate_options_headers( /* According BACNet standard secure path header option can be added only to data options. (AB.2.3.1 Secure Path Header Option) */ - *error = ERROR_CODE_HEADER_ENCODING_ERROR; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_HEADER_ENCODING_ERROR; + *error_class = ERROR_CLASS_COMMUNICATION; *error_desc_string = s_invalid_header_1; return false; } if (flags & BVLC_SC_HEADER_DATA) { /* securepath option header does not have data header according bacnet stadard */ - *error = ERROR_CODE_HEADER_ENCODING_ERROR; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_HEADER_ENCODING_ERROR; + *error_class = ERROR_CLASS_COMMUNICATION; *error_desc_string = s_invalid_header_2; return false; } @@ -172,8 +172,8 @@ static bool bvlc_sc_validate_options_headers( } else if (option == BVLC_SC_OPTION_TYPE_PROPRIETARY) { if (!(flags & BVLC_SC_HEADER_DATA)) { /* proprietary option must have header data */ - *error = ERROR_CODE_HEADER_ENCODING_ERROR; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_HEADER_ENCODING_ERROR; + *error_class = ERROR_CLASS_COMMUNICATION; *error_desc_string = s_invalid_header_3; return false; } @@ -181,8 +181,8 @@ static bool bvlc_sc_validate_options_headers( if (options_len + 2 > option_headers_max_len) { /* not enough data to process header that means that probably message is incomplete */ - *error = ERROR_CODE_MESSAGE_INCOMPLETE; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_MESSAGE_INCOMPLETE; + *error_class = ERROR_CLASS_COMMUNICATION; *error_desc_string = s_message_is_incompleted; return false; } @@ -194,8 +194,8 @@ static bool bvlc_sc_validate_options_headers( if (options_len > option_headers_max_len) { /* not enough data to process header that means that probably message is incomplete */ - *error = ERROR_CODE_MESSAGE_INCOMPLETE; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_MESSAGE_INCOMPLETE; + *error_class = ERROR_CLASS_COMMUNICATION; *error_desc_string = s_message_is_incompleted; return false; } @@ -239,8 +239,8 @@ static size_t bvlc_sc_add_option( uint8_t flags = 0; size_t options_len = 0; uint8_t mask; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; BACNET_OPTION_VALIDATION_TYPE vt; const char *err_desc; @@ -282,7 +282,7 @@ static size_t bvlc_sc_add_option( /* ensure that user wants to add valid option */ if (!bvlc_sc_validate_options_headers( BACNET_USER_OPTION_VALIDATION, sc_option, sc_option_len, - &options_len, NULL, &error, &class, &err_desc)) { + &options_len, NULL, &error_code, &error_class, &err_desc)) { return 0; } @@ -311,8 +311,8 @@ static size_t bvlc_sc_add_option( Validate them at first. */ if (!bvlc_sc_validate_options_headers( BACNET_PDU_DEST_OPTION_VALIDATION, &in_pdu[offs], - in_pdu_len - offs, &options_len, NULL, &error, &class, - &err_desc)) { + in_pdu_len - offs, &options_len, NULL, &error_code, + &error_class, &err_desc)) { return 0; } offs += options_len; @@ -325,10 +325,9 @@ static size_t bvlc_sc_add_option( if ((flags & mask)) { /* some options are already presented in message. Validate them at first. */ - if (!bvlc_sc_validate_options_headers( vt, &in_pdu[offs], in_pdu_len - offs, &options_len, NULL, - &error, &class, &err_desc)) { + &error_code, &error_class, &err_desc)) { return 0; } } @@ -738,7 +737,7 @@ size_t bvlc_sc_encode_result( uint8_t *error_header_marker, uint16_t *error_class, uint16_t *error_code, - const uint8_t *utf8_details_string) + const char *utf8_details_string) { size_t offs; @@ -817,8 +816,8 @@ size_t bvlc_sc_encode_result( * @param payload - pointer to the decoded data * @param packed_payload - pointer to the packed data * @param packed_payload_len - size of the packed data - * @param error - pointer to the error code - * @param class - pointer to the error class + * @param error_code - pointer to the error code + * @param error_class - pointer to the error class * @param err_desc - pointer to the error description string * @return true if the data is decoded successfully, false otherwise */ @@ -826,15 +825,15 @@ static bool bvlc_sc_decode_result( BVLC_SC_DECODED_DATA *payload, uint8_t *packed_payload, size_t packed_payload_len, - BACNET_ERROR_CODE *error, - BACNET_ERROR_CLASS *class, + uint16_t *error_code, + uint16_t *error_class, const char **err_desc) { size_t i; if (packed_payload_len < 2) { - *error = ERROR_CODE_MESSAGE_INCOMPLETE; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_MESSAGE_INCOMPLETE; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_result_incomplete; return false; } @@ -843,8 +842,8 @@ static bool bvlc_sc_decode_result( if (packed_payload[0] > (uint8_t)BVLC_SC_PROPRIETARY_MESSAGE) { /* unknown BVLC function */ - *error = ERROR_CODE_PARAMETER_OUT_OF_RANGE; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_PARAMETER_OUT_OF_RANGE; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_result_incorrect_bvlc_function; return false; } @@ -852,8 +851,8 @@ static bool bvlc_sc_decode_result( payload->result.bvlc_function = packed_payload[0]; if (packed_payload[1] != 0 && packed_payload[1] != 1) { /* result code must be 1 or 0 */ - *error = ERROR_CODE_PARAMETER_OUT_OF_RANGE; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_PARAMETER_OUT_OF_RANGE; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_result_incorrect_result_code; return false; } @@ -862,8 +861,8 @@ static bool bvlc_sc_decode_result( if (packed_payload[1] == 1) { if (packed_payload_len < 7) { - *error = ERROR_CODE_MESSAGE_INCOMPLETE; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_MESSAGE_INCOMPLETE; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_result_incomplete; return false; } @@ -885,8 +884,8 @@ static bool bvlc_sc_decode_result( } } if (i != packed_payload_len - 7) { - *error = ERROR_CODE_INCONSISTENT_PARAMETERS; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_INCONSISTENT_PARAMETERS; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_result_inconsistent; return false; } @@ -898,8 +897,8 @@ static bool bvlc_sc_decode_result( /* indicating an 'Error Class' of COMMUNICATION and 'Error Code' of */ /* UNEXPECTED_DATA. The message shall be discarded and not be processed. */ - *error = ERROR_CODE_UNEXPECTED_DATA; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_UNEXPECTED_DATA; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_result_unexpected_data; return false; } @@ -1138,8 +1137,8 @@ size_t bvlc_sc_encode_advertisiment( * @param payload - pointer to the decoded data * @param packed_payload - pointer to packed data * @param packed_payload_len - size of packed data - * @param error - pointer to the error code - * @param class - pointer to the error class + * @param error_code - pointer to the error code + * @param error_class - pointer to the error class * @param err_desc - pointer to the error description string * @return true if the data is decoded successfully, false otherwise */ @@ -1147,32 +1146,32 @@ static bool bvlc_sc_decode_advertisiment( BVLC_SC_DECODED_DATA *payload, uint8_t *packed_payload, size_t packed_payload_len, - BACNET_ERROR_CODE *error, - BACNET_ERROR_CLASS *class, + uint16_t *error_code, + uint16_t *error_class, const char **err_desc) { if (packed_payload_len < 6) { - *error = ERROR_CODE_MESSAGE_INCOMPLETE; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_MESSAGE_INCOMPLETE; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_advertisiment_incomplete; return false; } if (packed_payload_len > 6) { - *error = ERROR_CODE_UNEXPECTED_DATA; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_UNEXPECTED_DATA; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_advertisiment_unexpected; return false; } if (packed_payload[0] > BACNET_SC_HUB_CONNECTOR_STATE_MAX) { - *error = ERROR_CODE_PARAMETER_OUT_OF_RANGE; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_PARAMETER_OUT_OF_RANGE; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_advertisiment_param1_error; return false; } if (packed_payload[1] > BVLC_SC_DIRECT_CONNECTION_SUPPORT_MAX) { - *error = ERROR_CODE_PARAMETER_OUT_OF_RANGE; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_PARAMETER_OUT_OF_RANGE; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_advertisiment_param2_error; return false; } @@ -1307,8 +1306,8 @@ size_t bvlc_sc_encode_connect_request( * @param payload - pointer to the decoded data * @param packed_payload - pointer to the packed data * @param packed_payload_len - size of the packed data - * @param error - pointer to the error code - * @param class - pointer to the error class + * @param error_code - pointer to the error code + * @param error_class - pointer to the error class * @param err_desc - pointer to the error description string * @return true if the data is decoded successfully, false otherwise */ @@ -1316,18 +1315,18 @@ static bool bvlc_sc_decode_connect_request( BVLC_SC_DECODED_DATA *payload, uint8_t *packed_payload, size_t packed_payload_len, - BACNET_ERROR_CODE *error, - BACNET_ERROR_CLASS *class, + uint16_t *error_code, + uint16_t *error_class, const char **err_desc) { if (packed_payload_len < 26) { - *error = ERROR_CODE_MESSAGE_INCOMPLETE; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_MESSAGE_INCOMPLETE; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_connect_request_incomplete; return false; } else if (packed_payload_len > 26) { - *error = ERROR_CODE_UNEXPECTED_DATA; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_UNEXPECTED_DATA; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_connect_request_unexpected; return false; } @@ -1426,8 +1425,8 @@ size_t bvlc_sc_encode_connect_accept( * @param payload - pointer to the decoded data * @param packed_payload - pointer to the packed data * @param packed_payload_len - size of the packed data - * @param error - pointer to the error code - * @param class - pointer to the error class + * @param error_code - pointer to the error code + * @param error_class - pointer to the error class * @param err_desc - pointer to the error description string * @return true if the data is decoded successfully, false otherwise */ @@ -1435,18 +1434,18 @@ static bool bvlc_sc_decode_connect_accept( BVLC_SC_DECODED_DATA *payload, uint8_t *packed_payload, size_t packed_payload_len, - BACNET_ERROR_CODE *error, - BACNET_ERROR_CLASS *class, + uint16_t *error_code, + uint16_t *error_class, const char **err_desc) { if (packed_payload_len < 26) { - *error = ERROR_CODE_MESSAGE_INCOMPLETE; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_MESSAGE_INCOMPLETE; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_connect_accept_incomplete; return false; } else if (packed_payload_len > 26) { - *error = ERROR_CODE_UNEXPECTED_DATA; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_UNEXPECTED_DATA; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_connect_accept_unexpected; return false; } @@ -1666,8 +1665,8 @@ size_t bvlc_sc_encode_proprietary_message( * @param payload - pointer to the decoded data * @param packed_payload - pointer to the packed data * @param packed_payload_len - size of the packed data - * @param error - pointer to the error code - * @param class - pointer to the error class + * @param error_code - pointer to the error code + * @param error_class - pointer to the error class * @param err_desc - pointer to the error description string * @return true if the data is decoded successfully, false otherwise */ @@ -1675,13 +1674,13 @@ static bool bvlc_sc_decode_proprietary( BVLC_SC_DECODED_DATA *payload, uint8_t *packed_payload, size_t packed_payload_len, - BACNET_ERROR_CODE *error, - BACNET_ERROR_CLASS *class, + uint16_t *error_code, + uint16_t *error_class, const char **err_desc) { if (packed_payload_len < 3) { - *error = ERROR_CODE_MESSAGE_INCOMPLETE; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_MESSAGE_INCOMPLETE; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_proprietary_incomplete; return false; } @@ -1707,8 +1706,8 @@ static bool bvlc_sc_decode_proprietary( * @param message - buffer with the message * @param message_len - length of the message * @param hdr - pointer to the decoded header - * @param error - pointer to the error code - * @param class - pointer to the error class + * @param error_code - pointer to the error code + * @param error_class - pointer to the error class * @param err_desc - pointer to the error description string * @return true if the data is decoded successfully, false otherwise */ @@ -1716,8 +1715,8 @@ static bool bvlc_sc_decode_hdr( uint8_t *message, size_t message_len, BVLC_SC_DECODED_HDR *hdr, - BACNET_ERROR_CODE *error, - BACNET_ERROR_CLASS *class, + uint16_t *error_code, + uint16_t *error_class, const char **err_desc) { size_t offs = 4; @@ -1731,8 +1730,8 @@ static bool bvlc_sc_decode_hdr( /* If a BVLC message is received that has fewer than four octets, a */ /* BVLC-Result NAK shall not be returned. */ /* The message shall be discarded and not be processed. */ - *error = ERROR_CODE_DISCARD; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_DISCARD; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = NULL; return ret; } @@ -1745,8 +1744,8 @@ static bool bvlc_sc_decode_hdr( offs += BVLC_SC_VMAC_SIZE; if (offs > message_len) { hdr->origin = NULL; - *error = ERROR_CODE_MESSAGE_INCOMPLETE; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_MESSAGE_INCOMPLETE; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_hdr_incomplete1; return false; } @@ -1757,8 +1756,8 @@ static bool bvlc_sc_decode_hdr( offs += BVLC_SC_VMAC_SIZE; if (offs > message_len) { hdr->dest = NULL; - *error = ERROR_CODE_MESSAGE_INCOMPLETE; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_MESSAGE_INCOMPLETE; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_hdr_incomplete2; return false; } @@ -1770,8 +1769,8 @@ static bool bvlc_sc_decode_hdr( /* That's why that error handling is put after filling of address fields. */ if (message[0] > BVLC_SC_PROPRIETARY_MESSAGE) { - *error = ERROR_CODE_BVLC_FUNCTION_UNKNOWN; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_BVLC_FUNCTION_UNKNOWN; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_unknown_bvlc_function; return ret; } @@ -1779,8 +1778,8 @@ static bool bvlc_sc_decode_hdr( if (message[1] & BVLC_SC_CONTROL_DEST_OPTIONS) { ret = bvlc_sc_validate_options_headers( BACNET_PDU_DEST_OPTION_VALIDATION, &message[offs], - message_len - offs, &hdr_opt_len, &hdr->dest_options_num, error, - class, err_desc); + message_len - offs, &hdr_opt_len, &hdr->dest_options_num, + error_code, error_class, err_desc); if (!ret) { return false; @@ -1793,8 +1792,8 @@ static bool bvlc_sc_decode_hdr( if (message[1] & BVLC_SC_CONTROL_DATA_OPTIONS) { ret = bvlc_sc_validate_options_headers( BACNET_PDU_DATA_OPTION_VALIDATION, &message[offs], - message_len - offs, &hdr_opt_len, &hdr->data_options_num, error, - class, err_desc); + message_len - offs, &hdr_opt_len, &hdr->data_options_num, + error_code, error_class, err_desc); if (!ret) { return false; } @@ -1878,22 +1877,23 @@ bvlc_sc_decode_data_options_if_exists(BVLC_SC_DECODED_MESSAGE *message) * @param buf - A buffer which holds BACNet/SC PDU. * @param buf_len - length of a buffer which holds BACNet/SC PDU. * @param message- pointer to structure for decoded data. - * @param error - the value of parameter is filled if function returns false. - * Check BACNET_ERROR_CLASS enum. - * @param class - the value of parameter is filled if function returns false. - * heck BACNET_ERROR_CODE enum. + * @param error-code - the value of parameter is filled if function returns + * false. Check BACNET_ERROR_CLASS enum. + * @param error_class - the value of parameter is filled if function returns + * false. Check BACNET_ERROR_CODE enum. * @return true if PDU was successfully decoded otherwise returns false, - * and error and class parameters are filled with corresponded codes. + * and error and class parameters are filled with corresponded codes. */ bool bvlc_sc_decode_message( uint8_t *buf, size_t buf_len, BVLC_SC_DECODED_MESSAGE *message, - BACNET_ERROR_CODE *error, - BACNET_ERROR_CLASS *class, + uint16_t *error_code, + uint16_t *error_class, const char **err_desc) { - if (!message || !buf_len || !error || !class || !buf || !err_desc) { + if (!message || !buf_len || !error_code || !error_class || !buf || + !err_desc) { return false; } @@ -1902,15 +1902,15 @@ bool bvlc_sc_decode_message( memset(&message->payload, 0, sizeof(message->payload)); if (!bvlc_sc_decode_hdr( - buf, buf_len, &message->hdr, error, class, err_desc)) { + buf, buf_len, &message->hdr, error_code, error_class, err_desc)) { return false; } if (message->hdr.dest_options) { if (message->hdr.dest_options_num > BVLC_SC_HEADER_OPTION_MAX) { /* dest header options list is too long */ - *error = ERROR_CODE_OUT_OF_MEMORY; - *class = ERROR_CLASS_RESOURCES; + *error_code = ERROR_CODE_OUT_OF_MEMORY; + *error_class = ERROR_CLASS_RESOURCES; *err_desc = s_dest_options_list_too_long; return false; } @@ -1919,8 +1919,8 @@ bool bvlc_sc_decode_message( if (message->hdr.data_options) { if (message->hdr.data_options_num > BVLC_SC_HEADER_OPTION_MAX) { /* data header options list is too long */ - *error = ERROR_CODE_OUT_OF_MEMORY; - *class = ERROR_CLASS_RESOURCES; + *error_code = ERROR_CODE_OUT_OF_MEMORY; + *error_class = ERROR_CLASS_RESOURCES; *err_desc = s_data_options_list_too_long; return false; } @@ -1930,15 +1930,15 @@ bool bvlc_sc_decode_message( case BVLC_SC_RESULT: { if (message->hdr.data_options) { /* The BVLC-Result message must not have data options */ - *error = ERROR_CODE_INCONSISTENT_PARAMETERS; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_INCONSISTENT_PARAMETERS; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_result_unexpected_data_options; return false; } if (!message->hdr.payload || !message->hdr.payload_len) { - *error = ERROR_CODE_PAYLOAD_EXPECTED; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_PAYLOAD_EXPECTED; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_result_payload_expected; return false; } @@ -1947,15 +1947,16 @@ bool bvlc_sc_decode_message( if (!bvlc_sc_decode_result( &message->payload, message->hdr.payload, - message->hdr.payload_len, error, class, err_desc)) { + message->hdr.payload_len, error_code, error_class, + err_desc)) { return false; } break; } case BVLC_SC_ENCAPSULATED_NPDU: { if (!message->hdr.payload || !message->hdr.payload_len) { - *error = ERROR_CODE_PAYLOAD_EXPECTED; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_PAYLOAD_EXPECTED; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_encapsulated_npdu_payload_expected; return false; } @@ -1971,8 +1972,8 @@ bool bvlc_sc_decode_message( case BVLC_SC_ADDRESS_RESOLUTION: { if (message->hdr.data_options) { /* The Address-Resolution message must not have data options */ - *error = ERROR_CODE_INCONSISTENT_PARAMETERS; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_INCONSISTENT_PARAMETERS; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_address_resolution_data_options; return false; } @@ -1986,8 +1987,8 @@ bool bvlc_sc_decode_message( /* 'Error Code' of UNEXPECTED_DATA. The message shall be */ /* discarded and not be processed. */ - *error = ERROR_CODE_UNEXPECTED_DATA; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_UNEXPECTED_DATA; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_address_resolution_unexpected; return false; } @@ -1999,8 +2000,8 @@ bool bvlc_sc_decode_message( if (message->hdr.data_options) { /* The Address-Resolution Ack message must not have data options */ - *error = ERROR_CODE_INCONSISTENT_PARAMETERS; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_INCONSISTENT_PARAMETERS; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_address_resolution_ack_data_options; return false; } @@ -2021,15 +2022,15 @@ bool bvlc_sc_decode_message( case BVLC_SC_ADVERTISIMENT: { if (message->hdr.data_options) { /* The advertisiment message must not have data options */ - *error = ERROR_CODE_INCONSISTENT_PARAMETERS; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_INCONSISTENT_PARAMETERS; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_advertisiment_data_options; return false; } if (!message->hdr.payload || !message->hdr.payload_len) { - *error = ERROR_CODE_PAYLOAD_EXPECTED; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_PAYLOAD_EXPECTED; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_advertisiment_payload_expected; return false; } @@ -2038,7 +2039,8 @@ bool bvlc_sc_decode_message( if (!bvlc_sc_decode_advertisiment( &message->payload, message->hdr.payload, - message->hdr.payload_len, error, class, err_desc)) { + message->hdr.payload_len, error_code, error_class, + err_desc)) { return false; } break; @@ -2047,15 +2049,15 @@ bool bvlc_sc_decode_message( if (message->hdr.data_options) { /* The advertisiment solicitation message must not have data * options */ - *error = ERROR_CODE_INCONSISTENT_PARAMETERS; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_INCONSISTENT_PARAMETERS; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_advertisiment_solicitation_data_options; return false; } if (message->hdr.payload || message->hdr.payload_len) { - *error = ERROR_CODE_UNEXPECTED_DATA; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_UNEXPECTED_DATA; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_advertisiment_solicitation_payload_expected; return false; } @@ -2070,22 +2072,22 @@ bool bvlc_sc_decode_message( case BVLC_SC_HEARTBEAT_REQUEST: case BVLC_SC_HEARTBEAT_ACK: { if (message->hdr.origin != 0) { - *error = ERROR_CODE_HEADER_ENCODING_ERROR; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_HEADER_ENCODING_ERROR; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_origin_unexpected; return false; } if (message->hdr.dest != 0) { - *error = ERROR_CODE_HEADER_ENCODING_ERROR; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_HEADER_ENCODING_ERROR; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_dest_unexpected; return false; } if (message->hdr.data_options) { - *error = ERROR_CODE_INCONSISTENT_PARAMETERS; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_INCONSISTENT_PARAMETERS; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_data_option_unexpected; return false; } @@ -2093,15 +2095,15 @@ bool bvlc_sc_decode_message( if (message->hdr.bvlc_function == BVLC_SC_CONNECT_REQUEST || message->hdr.bvlc_function == BVLC_SC_CONNECT_ACCEPT) { if (!message->hdr.payload || !message->hdr.payload_len) { - *error = ERROR_CODE_PAYLOAD_EXPECTED; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_PAYLOAD_EXPECTED; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_absent_payload; return false; } } else { if (message->hdr.payload || message->hdr.payload_len) { - *error = ERROR_CODE_UNEXPECTED_DATA; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_UNEXPECTED_DATA; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_message_too_long; return false; } @@ -2112,13 +2114,15 @@ bool bvlc_sc_decode_message( if (message->hdr.bvlc_function == BVLC_SC_CONNECT_REQUEST) { if (!bvlc_sc_decode_connect_request( &message->payload, message->hdr.payload, - message->hdr.payload_len, error, class, err_desc)) { + message->hdr.payload_len, error_code, error_class, + err_desc)) { return false; } } else if (message->hdr.bvlc_function == BVLC_SC_CONNECT_ACCEPT) { if (!bvlc_sc_decode_connect_accept( &message->payload, message->hdr.payload, - message->hdr.payload_len, error, class, err_desc)) { + message->hdr.payload_len, error_code, error_class, + err_desc)) { return false; } } @@ -2127,15 +2131,15 @@ bool bvlc_sc_decode_message( case BVLC_SC_PROPRIETARY_MESSAGE: { if (message->hdr.data_options) { /* The proprietary message must not have data options */ - *error = ERROR_CODE_INCONSISTENT_PARAMETERS; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_INCONSISTENT_PARAMETERS; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_proprietary_data_options; return false; } if (!message->hdr.payload || !message->hdr.payload_len) { - *error = ERROR_CODE_PAYLOAD_EXPECTED; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_PAYLOAD_EXPECTED; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_proprietary_payload; return false; } @@ -2144,14 +2148,15 @@ bool bvlc_sc_decode_message( if (!bvlc_sc_decode_proprietary( &message->payload, message->hdr.payload, - message->hdr.payload_len, error, class, err_desc)) { + message->hdr.payload_len, error_code, error_class, + err_desc)) { return false; } break; } default: - *error = ERROR_CODE_BVLC_FUNCTION_UNKNOWN; - *class = ERROR_CLASS_COMMUNICATION; + *error_code = ERROR_CODE_BVLC_FUNCTION_UNKNOWN; + *error_class = ERROR_CLASS_COMMUNICATION; *err_desc = s_unknown_bvlc_function; return false; } diff --git a/src/bacnet/datalink/bsc/bvlc-sc.h b/src/bacnet/datalink/bsc/bvlc-sc.h index 2f493218..f0faea10 100644 --- a/src/bacnet/datalink/bsc/bvlc-sc.h +++ b/src/bacnet/datalink/bsc/bvlc-sc.h @@ -285,7 +285,7 @@ size_t bvlc_sc_encode_result( uint8_t *error_header_marker, uint16_t *error_class, uint16_t *error_code, - const uint8_t *utf8_details_string); + const char *utf8_details_string); BACNET_STACK_EXPORT size_t bvlc_sc_encode_encapsulated_npdu( @@ -388,8 +388,8 @@ bool bvlc_sc_decode_message( uint8_t *buf, size_t buf_len, BVLC_SC_DECODED_MESSAGE *message, - BACNET_ERROR_CODE *error, - BACNET_ERROR_CLASS *class, + uint16_t *error_code, + uint16_t *error_class, const char **err_desc); BACNET_STACK_EXPORT diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index b39b572f..4958e4b6 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -189,11 +189,23 @@ list(APPEND testdirs bacnet/datalink/bvlc bacnet/datalink/mstp bacnet/datalink/dlmstp + bacnet/datalink/bvlc-sc ) +if(BACDL_BSC) +message(STATUS "Added BACnet/SC websocket dependent tests") +list(APPEND testdirs + bacnet/datalink/bsc-datalink + bacnet/datalink/bsc-node + bacnet/datalink/bsc-socket + bacnet/datalink/hub-sc + bacnet/datalink/websockets +) +endif() + # ports tests if(ZEPHYR_BASE) - message(FATAL_ERROR "ZEPHYR_BASE env variable defined. Use zephyr/CMakeLists.txt for Zephyr build") + message(FATAL_ERROR "ZEPHYR_BASE env variable defined.") elseif(${CMAKE_SYSTEM_NAME} STREQUAL "Linux") message(STATUS "Added ports specific tests for linux") diff --git a/test/bacnet/datalink/bsc-datalink/src/main.c b/test/bacnet/datalink/bsc-datalink/src/main.c index 9959dfc1..0d5ffb88 100644 --- a/test/bacnet/datalink/bsc-datalink/src/main.c +++ b/test/bacnet/datalink/bsc-datalink/src/main.c @@ -10113,8 +10113,8 @@ static void test_sc_datalink(void) uint8_t npdu[128]; BACNET_ADDRESS from; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_class; + uint16_t error_code; const char *err_desc; BACNET_ADDRESS dest; uint8_t big_npdu[BVLC_SC_NPDU_SIZE_CONF + 100]; @@ -10268,7 +10268,8 @@ static void test_sc_datalink(void) zassert_equal( wait_node_ev(&node_ev2, BSC_NODE_EVENT_RECEIVED_NPDU, node2), true, 0); ret = bvlc_sc_decode_message( - node_ev2.pdu, node_ev2.pdu_len, &message, &error, &class, &err_desc); + node_ev2.pdu, node_ev2.pdu_len, &message, &error_code, &error_class, + &err_desc); zassert_equal(ret, true, NULL); zassert_equal(len, message.payload.encapsulated_npdu.npdu_len, NULL); ret = memcmp(npdu, message.payload.encapsulated_npdu.npdu, len); @@ -10284,7 +10285,8 @@ static void test_sc_datalink(void) zassert_equal( wait_node_ev(&node_ev2, BSC_NODE_EVENT_RECEIVED_NPDU, node2), true, 0); ret = bvlc_sc_decode_message( - node_ev2.pdu, node_ev2.pdu_len, &message, &error, &class, &err_desc); + node_ev2.pdu, node_ev2.pdu_len, &message, &error_code, &error_class, + &err_desc); zassert_equal(ret, true, NULL); zassert_equal(len, message.payload.encapsulated_npdu.npdu_len, NULL); ret = memcmp(npdu, message.payload.encapsulated_npdu.npdu, len); diff --git a/test/bacnet/datalink/bsc-node/src/main.c b/test/bacnet/datalink/bsc-node/src/main.c index 4de4dec6..89df5a7c 100644 --- a/test/bacnet/datalink/bsc-node/src/main.c +++ b/test/bacnet/datalink/bsc-node/src/main.c @@ -11546,8 +11546,8 @@ static void test_node_send(void) size_t len; uint8_t npdu[128]; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; const char *err_desc; uint8_t optbuf[128]; size_t optlen; @@ -11671,7 +11671,8 @@ static void test_node_send(void) zassert_equal( wait_node_ev(&node_ev2, BSC_NODE_EVENT_RECEIVED_NPDU, node2), true, 0); ret = bvlc_sc_decode_message( - node_ev2.pdu, node_ev2.pdu_len, &message, &error, &class, &err_desc); + node_ev2.pdu, node_ev2.pdu_len, &message, &error_code, &error_class, + &err_desc); zassert_equal(ret, true, NULL); zassert_equal( sizeof(npdu), message.payload.encapsulated_npdu.npdu_len, NULL); @@ -11695,7 +11696,8 @@ static void test_node_send(void) wait_node_ev(&node_ev3, BSC_NODE_EVENT_RECEIVED_RESULT, node3), true, 0); ret = bvlc_sc_decode_message( - node_ev3.pdu, node_ev3.pdu_len, &message, &error, &class, &err_desc); + node_ev3.pdu, node_ev3.pdu_len, &message, &error_code, &error_class, + &err_desc); zassert_equal(ret, true, NULL); zassert_equal(message.hdr.bvlc_function, BVLC_SC_RESULT, NULL); zassert_equal( @@ -11718,7 +11720,8 @@ static void test_node_send(void) zassert_equal( wait_node_ev(&node_ev2, BSC_NODE_EVENT_RECEIVED_NPDU, node2), true, 0); ret = bvlc_sc_decode_message( - node_ev2.pdu, node_ev2.pdu_len, &message, &error, &class, &err_desc); + node_ev2.pdu, node_ev2.pdu_len, &message, &error_code, &error_class, + &err_desc); zassert_equal(ret, true, NULL); zassert_equal( sizeof(npdu), message.payload.encapsulated_npdu.npdu_len, NULL); @@ -11736,7 +11739,8 @@ static void test_node_send(void) wait_node_ev(&node_ev3, BSC_NODE_EVENT_RECEIVED_ADVERTISIMENT, node3), true, 0); ret = bvlc_sc_decode_message( - node_ev3.pdu, node_ev3.pdu_len, &message, &error, &class, &err_desc); + node_ev3.pdu, node_ev3.pdu_len, &message, &error_code, &error_class, + &err_desc); zassert_equal(ret, true, NULL); zassert_equal(message.hdr.bvlc_function, BVLC_SC_ADVERTISIMENT, NULL); zassert_equal( @@ -11788,8 +11792,8 @@ static void test_node_local_hub_function(void) size_t len; uint8_t npdu[128]; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; const char *err_desc; BACNET_SC_VMAC_ADDRESS broadcast; @@ -11908,7 +11912,8 @@ static void test_node_local_hub_function(void) zassert_equal( wait_node_ev(&node_ev2, BSC_NODE_EVENT_RECEIVED_NPDU, node2), true, 0); ret = bvlc_sc_decode_message( - node_ev2.pdu, node_ev2.pdu_len, &message, &error, &class, &err_desc); + node_ev2.pdu, node_ev2.pdu_len, &message, &error_code, &error_class, + &err_desc); zassert_equal(ret, true, NULL); zassert_equal( sizeof(npdu), message.payload.encapsulated_npdu.npdu_len, NULL); @@ -11918,7 +11923,8 @@ static void test_node_local_hub_function(void) zassert_equal( wait_node_ev(&node_ev, BSC_NODE_EVENT_RECEIVED_NPDU, node), true, 0); ret = bvlc_sc_decode_message( - node_ev.pdu, node_ev.pdu_len, &message, &error, &class, &err_desc); + node_ev.pdu, node_ev.pdu_len, &message, &error_code, &error_class, + &err_desc); zassert_equal(ret, true, NULL); zassert_equal( sizeof(npdu), message.payload.encapsulated_npdu.npdu_len, NULL); @@ -11974,8 +11980,8 @@ static void test_node_direct_connection(void) size_t len; uint8_t npdu[128]; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; const char *err_desc; char uris[256]; char url1[256]; @@ -12179,7 +12185,8 @@ static void test_node_direct_connection(void) zassert_equal( wait_node_ev(&node_ev2, BSC_NODE_EVENT_RECEIVED_NPDU, node2), true, 0); ret = bvlc_sc_decode_message( - node_ev2.pdu, node_ev2.pdu_len, &message, &error, &class, &err_desc); + node_ev2.pdu, node_ev2.pdu_len, &message, &error_code, &error_class, + &err_desc); zassert_equal(ret, true, NULL); zassert_equal( sizeof(npdu), message.payload.encapsulated_npdu.npdu_len, NULL); @@ -12193,7 +12200,8 @@ static void test_node_direct_connection(void) zassert_equal( wait_node_ev(&node_ev2, BSC_NODE_EVENT_RECEIVED_NPDU, node2), true, 0); ret = bvlc_sc_decode_message( - node_ev2.pdu, node_ev2.pdu_len, &message, &error, &class, &err_desc); + node_ev2.pdu, node_ev2.pdu_len, &message, &error_code, &error_class, + &err_desc); zassert_equal(ret, true, NULL); zassert_equal( sizeof(npdu), message.payload.encapsulated_npdu.npdu_len, NULL); @@ -12221,7 +12229,8 @@ static void test_node_direct_connection(void) zassert_equal( wait_node_ev(&node_ev2, BSC_NODE_EVENT_RECEIVED_NPDU, node2), true, 0); ret = bvlc_sc_decode_message( - node_ev2.pdu, node_ev2.pdu_len, &message, &error, &class, &err_desc); + node_ev2.pdu, node_ev2.pdu_len, &message, &error_code, &error_class, + &err_desc); zassert_equal(ret, true, NULL); zassert_equal( sizeof(npdu), message.payload.encapsulated_npdu.npdu_len, NULL); @@ -12273,7 +12282,8 @@ static void test_node_direct_connection(void) zassert_equal( wait_node_ev(&node_ev2, BSC_NODE_EVENT_RECEIVED_NPDU, node2), true, 0); ret = bvlc_sc_decode_message( - node_ev2.pdu, node_ev2.pdu_len, &message, &error, &class, &err_desc); + node_ev2.pdu, node_ev2.pdu_len, &message, &error_code, &error_class, + &err_desc); zassert_equal(ret, true, NULL); zassert_equal( sizeof(npdu), message.payload.encapsulated_npdu.npdu_len, NULL); @@ -12344,7 +12354,8 @@ static void test_node_direct_connection(void) wait_node_ev(&node_ev2, BSC_NODE_EVENT_RECEIVED_NPDU, node2), true, 0); ret = bvlc_sc_decode_message( - node_ev2.pdu, node_ev2.pdu_len, &message, &error, &class, &err_desc); + node_ev2.pdu, node_ev2.pdu_len, &message, &error_code, &error_class, + &err_desc); zassert_equal(ret, true, NULL); zassert_equal( sizeof(npdu), message.payload.encapsulated_npdu.npdu_len, NULL); @@ -12359,7 +12370,8 @@ static void test_node_direct_connection(void) zassert_equal( wait_node_ev(&node_ev3, BSC_NODE_EVENT_RECEIVED_NPDU, node3), true, 0); ret = bvlc_sc_decode_message( - node_ev3.pdu, node_ev3.pdu_len, &message, &error, &class, &err_desc); + node_ev3.pdu, node_ev3.pdu_len, &message, &error_code, &error_class, + &err_desc); zassert_equal(ret, true, NULL); zassert_equal( sizeof(npdu), message.payload.encapsulated_npdu.npdu_len, NULL); @@ -12392,7 +12404,8 @@ static void test_node_direct_connection(void) zassert_equal( wait_node_ev(&node_ev3, BSC_NODE_EVENT_RECEIVED_NPDU, node3), true, 0); ret = bvlc_sc_decode_message( - node_ev3.pdu, node_ev3.pdu_len, &message, &error, &class, &err_desc); + node_ev3.pdu, node_ev3.pdu_len, &message, &error_code, &error_class, + &err_desc); zassert_equal(ret, true, NULL); zassert_equal( sizeof(npdu), message.payload.encapsulated_npdu.npdu_len, NULL); @@ -12669,8 +12682,8 @@ static void test_node_direct_connection_unsupported(void) char node_secondary_url3[128]; uint8_t npdu[128]; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; const char *err_desc; char uris[256]; // test configuration @@ -12830,7 +12843,8 @@ static void test_node_direct_connection_unsupported(void) wait_node_ev(&node_ev3, BSC_NODE_EVENT_RECEIVED_RESULT, node3), true, 0); ret = bvlc_sc_decode_message( - node_ev3.pdu, node_ev3.pdu_len, &message, &error, &class, &err_desc); + node_ev3.pdu, node_ev3.pdu_len, &message, &error_code, &error_class, + &err_desc); zassert_equal(ret, true, NULL); zassert_equal(message.hdr.bvlc_function, BVLC_SC_RESULT, NULL); zassert_equal( diff --git a/test/bacnet/datalink/bsc-socket/src/main.c b/test/bacnet/datalink/bsc-socket/src/main.c index ccd28978..325357f4 100644 --- a/test/bacnet/datalink/bsc-socket/src/main.c +++ b/test/bacnet/datalink/bsc-socket/src/main.c @@ -10510,10 +10510,12 @@ static void test_error_case1(void) uint8_t buf[2048]; uint8_t npdu[1200]; size_t len; - // BVLC_SC_DECODED_MESSAGE dpdu; - // BACNET_ERROR_CODE error; - // BACNET_ERROR_CLASS class; - // const char *err_desc; +#if 0 + BVLC_SC_DECODED_MESSAGE dpdu; + BACNET_ERROR_CODE error_code; + BACNET_ERROR_CLASS error_class; + const char *err_desc; +#endif init_sock_ev(&cli_ev); init_sock_ev(&srv_ev); @@ -10564,57 +10566,59 @@ static void test_error_case1(void) ret = bsc_send(srv_sock, buf, len); zassert_equal( ret, BSC_SC_NO_RESOURCES, 0); /* BUG? should be BSC_SC_SUCCESS*/ - // zassert_equal(ret, BSC_SC_SUCCESS, 0); - // zassert_equal(wait_sock_ev(&srv_ev, BSC_SOCKET_EVENT_RECEIVED), true, 0); - // ret = bvlc_sc_decode_message( - // recv_buf, recv_buf_len, &dpdu, &error, &class, &err_desc); - // zassert_equal(ret, true, NULL); - // zassert_equal( - // dpdu.payload.result.error_code, ERROR_CODE_HEADER_ENCODING_ERROR, - // NULL); - // zassert_equal( - // dpdu.payload.result.error_class, ERROR_CLASS_COMMUNICATION, NULL); - // len = bvlc_sc_encode_encapsulated_npdu( - // buf, sizeof(buf), 505, NULL, NULL, npdu, sizeof(npdu)); - // ret = bsc_send(&cli_socks[0], buf, len); - // zassert_equal(ret, BSC_SC_SUCCESS, 0); - // zassert_equal(wait_sock_ev(&cli_ev, BSC_SOCKET_EVENT_RECEIVED), true, 0); - // ret = bvlc_sc_decode_message( - // recv_buf, recv_buf_len, &dpdu, &error, &class, &err_desc); - // zassert_equal(ret, true, NULL); - // zassert_equal( - // dpdu.payload.result.error_code, ERROR_CODE_HEADER_ENCODING_ERROR, - // NULL); - // zassert_equal( - // dpdu.payload.result.error_class, ERROR_CLASS_COMMUNICATION, NULL); - // len = bvlc_sc_encode_encapsulated_npdu( - // buf, sizeof(buf), 506, &server_vmac, &client_vmac, npdu, - // sizeof(npdu)); - // ret = bsc_send(srv_sock, buf, len); - // zassert_equal(ret, BSC_SC_SUCCESS, 0); - // zassert_equal(wait_sock_ev(&srv_ev, BSC_SOCKET_EVENT_RECEIVED), true, 0); - // ret = bvlc_sc_decode_message( - // recv_buf, recv_buf_len, &dpdu, &error, &class, &err_desc); - // zassert_equal(ret, true, NULL); - // zassert_equal( - // dpdu.payload.result.error_code, ERROR_CODE_HEADER_ENCODING_ERROR, - // NULL); - // zassert_equal( - // dpdu.payload.result.error_class, ERROR_CLASS_COMMUNICATION, NULL); - // len = bvlc_sc_encode_encapsulated_npdu( - // buf, sizeof(buf), 506, &server_vmac, &client_vmac, npdu, - // sizeof(npdu)); - // ret = bsc_send(&cli_socks[0], buf, len); - // zassert_equal(ret, BSC_SC_SUCCESS, 0); - // zassert_equal(wait_sock_ev(&cli_ev, BSC_SOCKET_EVENT_RECEIVED), true, 0); - // ret = bvlc_sc_decode_message( - // recv_buf, recv_buf_len, &dpdu, &error, &class, &err_desc); - // zassert_equal(ret, true, NULL); - // zassert_equal( - // dpdu.payload.result.error_code, ERROR_CODE_HEADER_ENCODING_ERROR, - // NULL); - // zassert_equal( - // dpdu.payload.result.error_class, ERROR_CLASS_COMMUNICATION, NULL); +#if 0 + zassert_equal(ret, BSC_SC_SUCCESS, 0); + zassert_equal(wait_sock_ev(&srv_ev, BSC_SOCKET_EVENT_RECEIVED), true, 0); + ret = bvlc_sc_decode_message( + recv_buf, recv_buf_len, &dpdu, &error_code, &error_class, &err_desc); + zassert_equal(ret, true, NULL); + zassert_equal( + dpdu.payload.result.error_code, ERROR_CODE_HEADER_ENCODING_ERROR, + NULL); + zassert_equal( + dpdu.payload.result.error_class, ERROR_CLASS_COMMUNICATION, NULL); + len = bvlc_sc_encode_encapsulated_npdu( + buf, sizeof(buf), 505, NULL, NULL, npdu, sizeof(npdu)); + ret = bsc_send(&cli_socks[0], buf, len); + zassert_equal(ret, BSC_SC_SUCCESS, 0); + zassert_equal(wait_sock_ev(&cli_ev, BSC_SOCKET_EVENT_RECEIVED), true, 0); + ret = bvlc_sc_decode_message( + recv_buf, recv_buf_len, &dpdu, &error_code, &error_class, &err_desc); + zassert_equal(ret, true, NULL); + zassert_equal( + dpdu.payload.result.error_code, ERROR_CODE_HEADER_ENCODING_ERROR, + NULL); + zassert_equal( + dpdu.payload.result.error_class, ERROR_CLASS_COMMUNICATION, NULL); + len = bvlc_sc_encode_encapsulated_npdu( + buf, sizeof(buf), 506, &server_vmac, &client_vmac, npdu, + sizeof(npdu)); + ret = bsc_send(srv_sock, buf, len); + zassert_equal(ret, BSC_SC_SUCCESS, 0); + zassert_equal(wait_sock_ev(&srv_ev, BSC_SOCKET_EVENT_RECEIVED), true, 0); + ret = bvlc_sc_decode_message( + recv_buf, recv_buf_len, &dpdu, &error_code, &error_class, &err_desc); + zassert_equal(ret, true, NULL); + zassert_equal( + dpdu.payload.result.error_code, ERROR_CODE_HEADER_ENCODING_ERROR, + NULL); + zassert_equal( + dpdu.payload.result.error_class, ERROR_CLASS_COMMUNICATION, NULL); + len = bvlc_sc_encode_encapsulated_npdu( + buf, sizeof(buf), 506, &server_vmac, &client_vmac, npdu, + sizeof(npdu)); + ret = bsc_send(&cli_socks[0], buf, len); + zassert_equal(ret, BSC_SC_SUCCESS, 0); + zassert_equal(wait_sock_ev(&cli_ev, BSC_SOCKET_EVENT_RECEIVED), true, 0); + ret = bvlc_sc_decode_message( + recv_buf, recv_buf_len, &dpdu, &error_code, &error_class, &err_desc); + zassert_equal(ret, true, NULL); + zassert_equal( + dpdu.payload.result.error_code, ERROR_CODE_HEADER_ENCODING_ERROR, + NULL); + zassert_equal( + dpdu.payload.result.error_class, ERROR_CLASS_COMMUNICATION, NULL); +#endif bsc_disconnect(srv_sock); zassert_equal( wait_sock_ev(&srv_ev, BSC_SOCKET_EVENT_DISCONNECTED), true, 0); diff --git a/test/bacnet/datalink/bvlc-sc/src/main.c b/test/bacnet/datalink/bvlc-sc/src/main.c index 65b95173..c57f2336 100644 --- a/test/bacnet/datalink/bvlc-sc/src/main.c +++ b/test/bacnet/datalink/bvlc-sc/src/main.c @@ -114,8 +114,8 @@ static void test_header_modifications( uint8_t sbuf[BSC_PRE + 256]; uint8_t *buf = &sbuf[BSC_PRE]; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; const char *err_desc = NULL; size_t len; bool ret; @@ -130,7 +130,7 @@ static void test_header_modifications( if (dest && !origin) { bvlc_sc_remove_dest_set_orig(buf, pdu_size, &test); ret = bvlc_sc_decode_message( - buf, pdu_size, &message, &error, &class, &err_desc); + buf, pdu_size, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, bvlc_function, message_id, &test, NULL, @@ -146,7 +146,7 @@ static void test_header_modifications( } else { bvlc_sc_remove_dest_set_orig(buf, pdu_size, &test); ret = bvlc_sc_decode_message( - buf, pdu_size, &message, &error, &class, &err_desc); + buf, pdu_size, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, bvlc_function, message_id, origin, dest, @@ -198,7 +198,7 @@ static void test_header_modifications( bvlc_function != BVLC_SC_HEARTBEAT_ACK) { len = bvlc_sc_set_orig(&ppdu, pdu_size, &test); ret = bvlc_sc_decode_message( - ppdu, len, &message, &error, &class, &err_desc); + ppdu, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, bvlc_function, message_id, &test, dest, @@ -217,8 +217,8 @@ static void test_header_modifications( memcpy(buf, pdu, pdu_size); ppdu = buf; len = bvlc_sc_remove_orig_and_dest(&ppdu, pdu_size); - ret = - bvlc_sc_decode_message(ppdu, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + ppdu, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); zassert_equal(message.hdr.origin, NULL, NULL); zassert_equal(message.hdr.dest, NULL, NULL); @@ -244,8 +244,8 @@ static void test_1_option_data( uint8_t buf[256]; uint8_t optbuf[256]; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; const char *err_desc = NULL; size_t optlen; size_t len; @@ -260,7 +260,8 @@ static void test_1_option_data( len = bvlc_sc_add_option_to_data_options( buf, sizeof(buf), buf, pdu_size, optbuf, optlen); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, bvlc_function, message_id, origin, dest, true, false, @@ -294,8 +295,8 @@ static void test_3_options_different_buffer_data( uint8_t buf1[256]; uint8_t optbuf[256]; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; size_t optlen; size_t len; bool ret; @@ -338,8 +339,8 @@ static void test_3_options_different_buffer_data( len = bvlc_sc_add_option_to_data_options( buf1, sizeof(buf1), buf, len, optbuf, optlen); zassert_not_equal(len, 0, NULL); - ret = - bvlc_sc_decode_message(buf1, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf1, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, bvlc_function, message_id, origin, dest, true, false, @@ -407,8 +408,8 @@ static void test_3_options_data( uint8_t buf[256]; uint8_t optbuf[256]; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; size_t optlen; size_t len = pdu_size; bool ret; @@ -452,7 +453,8 @@ static void test_3_options_data( buf, sizeof(buf), buf, len, optbuf, optlen); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, bvlc_function, message_id, origin, dest, true, false, @@ -520,8 +522,8 @@ static void test_5_options_data( uint8_t buf[256]; uint8_t optbuf[256]; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; size_t optlen; size_t len; bool ret; @@ -554,10 +556,11 @@ static void test_5_options_data( buf, sizeof(buf), buf, len, optbuf, optlen); zassert_not_equal(len, 0, NULL); } - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_OUT_OF_MEMORY, NULL); - zassert_equal(class, ERROR_CLASS_RESOURCES, NULL); + zassert_equal(error_code, ERROR_CODE_OUT_OF_MEMORY, NULL); + zassert_equal(error_class, ERROR_CLASS_RESOURCES, NULL); } /* check message decoding when header option has incorrect more bit flag */ @@ -575,8 +578,8 @@ static void test_options_incorrect_more_bit_data( uint8_t buf[256]; uint8_t optbuf[256]; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; size_t optlen; size_t len = pdu_size; bool ret; @@ -626,10 +629,11 @@ static void test_options_incorrect_more_bit_data( } buf[offs] &= ~(BVLC_SC_HEADER_MORE); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_UNEXPECTED_DATA, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_UNEXPECTED_DATA, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); } /* check message decoding when header option has incorrect more bit flag */ @@ -647,8 +651,8 @@ static void test_options_incorrect_data_bit_data( uint8_t buf[256]; uint8_t optbuf[256]; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; size_t optlen; size_t len = pdu_size; bool ret; @@ -687,10 +691,11 @@ static void test_options_incorrect_data_bit_data( } buf[offs] &= ~(BVLC_SC_HEADER_DATA); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_HEADER_ENCODING_ERROR, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_HEADER_ENCODING_ERROR, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); } /* secure path option must not be in dest option headers. this test @@ -709,8 +714,8 @@ static void test_1_option_dest_incorrect( uint8_t buf[256]; uint8_t optbuf[256]; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; size_t optlen; size_t len; bool ret; @@ -735,10 +740,11 @@ static void test_1_option_dest_incorrect( zassert_not_equal(len, 0, NULL); buf[1] &= ~(BVLC_SC_CONTROL_DATA_OPTIONS); buf[1] |= BVLC_SC_CONTROL_DEST_OPTIONS; - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_HEADER_ENCODING_ERROR, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_HEADER_ENCODING_ERROR, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); } static void test_1_option_dest( @@ -754,8 +760,8 @@ static void test_1_option_dest( uint8_t buf[256]; uint8_t optbuf[256]; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; size_t optlen; size_t len; bool ret; @@ -779,7 +785,8 @@ static void test_1_option_dest( len = bvlc_sc_add_option_to_destination_options( buf, sizeof(buf), buf, pdu_size, optbuf, optlen); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, bvlc_function, message_id, origin, dest, false, true, @@ -825,8 +832,8 @@ static void test_3_options_dest( uint8_t buf[256]; uint8_t optbuf[256]; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; size_t optlen; size_t len = pdu_size; bool ret; @@ -879,7 +886,8 @@ static void test_3_options_dest( len = bvlc_sc_add_option_to_destination_options( buf, sizeof(buf), buf, len, optbuf, optlen); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, bvlc_function, message_id, origin, dest, false, true, @@ -974,8 +982,8 @@ static void test_3_options_dest_different_buffer( uint8_t buf[256]; uint8_t optbuf[256]; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; size_t optlen; size_t len = pdu_size; bool ret; @@ -1028,8 +1036,8 @@ static void test_3_options_dest_different_buffer( len = bvlc_sc_add_option_to_destination_options( buf1, sizeof(buf1), buf, len, optbuf, optlen); zassert_not_equal(len, 0, NULL); - ret = - bvlc_sc_decode_message(buf1, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf1, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, bvlc_function, message_id, origin, dest, false, true, @@ -1123,8 +1131,8 @@ static void test_5_options_dest( uint8_t buf[256]; uint8_t optbuf[256]; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; size_t optlen; size_t len = pdu_size; bool ret; @@ -1157,10 +1165,11 @@ static void test_5_options_dest( buf, sizeof(buf), buf, len, optbuf, optlen); zassert_not_equal(len, 0, NULL); } - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_OUT_OF_MEMORY, NULL); - zassert_equal(class, ERROR_CLASS_RESOURCES, NULL); + zassert_equal(error_code, ERROR_CODE_OUT_OF_MEMORY, NULL); + zassert_equal(error_class, ERROR_CLASS_RESOURCES, NULL); } static void test_options_incorrect_data_bit_dest( @@ -1176,8 +1185,8 @@ static void test_options_incorrect_data_bit_dest( uint8_t buf[256]; uint8_t optbuf[256]; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; size_t optlen; size_t len = pdu_size; bool ret; @@ -1216,10 +1225,11 @@ static void test_options_incorrect_data_bit_dest( } buf[offs] &= ~(BVLC_SC_HEADER_DATA); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_HEADER_ENCODING_ERROR, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_HEADER_ENCODING_ERROR, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); } static void test_options_incorrect_more_bit_dest( @@ -1235,8 +1245,8 @@ static void test_options_incorrect_more_bit_dest( uint8_t buf[256]; uint8_t optbuf[256]; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; size_t optlen; size_t len = pdu_size; bool ret; @@ -1289,13 +1299,14 @@ static void test_options_incorrect_more_bit_dest( } buf[offs] &= ~(BVLC_SC_HEADER_MORE); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - if (error != ERROR_CODE_UNEXPECTED_DATA && - error != ERROR_CODE_PARAMETER_OUT_OF_RANGE) { + if (error_code != ERROR_CODE_UNEXPECTED_DATA && + error_code != ERROR_CODE_PARAMETER_OUT_OF_RANGE) { zassert_equal(1, 2, NULL); } - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); } static void test_options_mixed_case1( @@ -1311,8 +1322,8 @@ static void test_options_mixed_case1( uint8_t buf[256]; uint8_t optbuf[256]; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; size_t optlen; size_t len = pdu_size; bool ret; @@ -1379,7 +1390,8 @@ static void test_options_mixed_case1( len = bvlc_sc_add_option_to_data_options( buf, sizeof(buf), buf, len, optbuf, optlen); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, bvlc_function, message_id, origin, dest, false, false, @@ -1498,8 +1510,8 @@ static void test_options_mixed_case2( uint8_t buf[256]; uint8_t optbuf[256]; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; size_t optlen; size_t len = pdu_size; bool ret; @@ -1566,7 +1578,8 @@ static void test_options_mixed_case2( len = bvlc_sc_add_option_to_destination_options( buf, sizeof(buf), buf, len, optbuf, optlen); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, bvlc_function, message_id, origin, dest, false, false, @@ -1685,8 +1698,8 @@ static void test_options_mixed_case3( uint8_t buf[256]; uint8_t optbuf[256]; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; size_t optlen; size_t len = pdu_size; bool ret; @@ -1753,7 +1766,8 @@ static void test_options_mixed_case3( len = bvlc_sc_add_option_to_data_options( buf, sizeof(buf), buf, len, optbuf, optlen); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, bvlc_function, message_id, origin, dest, false, false, @@ -1950,12 +1964,12 @@ static void test_BVLC_RESULT(void) uint8_t result_bvlc_function = 3; bool ret; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; uint8_t error_header_marker = 0xcc; - uint16_t error_class = 0xaa; - uint16_t error_code = 0xdd; - const uint8_t *error_details_string = "something bad has happened"; + uint16_t test_error_class = 0xaa; + uint16_t test_error_code = 0xdd; + const char *error_details_string = "something bad has happened"; const char *err_desc = NULL; uint8_t *pdu; @@ -1968,7 +1982,8 @@ static void test_BVLC_RESULT(void) buf, buf_len, message_id, &origin, &dest, result_bvlc_function, 0, NULL, NULL, NULL, NULL); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_RESULT, message_id, &origin, &dest, true, true, @@ -1991,7 +2006,8 @@ static void test_BVLC_RESULT(void) pdu = buf; len = bvlc_sc_set_orig(&pdu, len, &new_origin); - ret = bvlc_sc_decode_message(pdu, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + pdu, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_RESULT, message_id, &new_origin, &dest, true, @@ -2005,7 +2021,8 @@ static void test_BVLC_RESULT(void) message.hdr.payload, message.hdr.payload_len, false); pdu = buf; len = bvlc_sc_remove_orig_and_dest(&pdu, len); - ret = bvlc_sc_decode_message(pdu, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + pdu, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_RESULT, message_id, NULL, NULL, true, true, 2); @@ -2027,7 +2044,8 @@ static void test_BVLC_RESULT(void) zassert_not_equal(len, 0, NULL); ret = bvlc_sc_pdu_has_no_dest(buf, len); zassert_equal(ret, true, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_RESULT, message_id, &origin, NULL, true, true, 2); @@ -2040,7 +2058,8 @@ static void test_BVLC_RESULT(void) message.hdr.payload, message.hdr.payload_len, false); pdu = buf; len = bvlc_sc_remove_orig_and_dest(&pdu, len); - ret = bvlc_sc_decode_message(pdu, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + pdu, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_RESULT, message_id, NULL, NULL, true, true, 2); @@ -2060,7 +2079,8 @@ static void test_BVLC_RESULT(void) buf, buf_len, message_id, NULL, &dest, result_bvlc_function, 0, NULL, NULL, NULL, NULL); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_RESULT, message_id, NULL, &dest, true, true, 2); @@ -2081,7 +2101,8 @@ static void test_BVLC_RESULT(void) NULL); pdu = buf; len = bvlc_sc_set_orig(&pdu, len, &new_origin); - ret = bvlc_sc_decode_message(pdu, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + pdu, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_RESULT, message_id, &new_origin, &dest, true, @@ -2099,7 +2120,8 @@ static void test_BVLC_RESULT(void) NULL, NULL, NULL); pdu = buf; len = bvlc_sc_remove_orig_and_dest(&pdu, len); - ret = bvlc_sc_decode_message(pdu, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + pdu, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_RESULT, message_id, NULL, NULL, true, true, 2); @@ -2117,7 +2139,8 @@ static void test_BVLC_RESULT(void) bvlc_sc_remove_dest_set_orig(buf, len, &new_origin); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_RESULT, message_id, &new_origin, NULL, true, true, @@ -2143,7 +2166,8 @@ static void test_BVLC_RESULT(void) memset(&test_dest, 0, sizeof(test_dest)); ret = bvlc_sc_pdu_get_dest(buf, len, &test_dest); zassert_equal(ret, false, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_RESULT, message_id, NULL, NULL, true, true, 2); @@ -2161,9 +2185,10 @@ static void test_BVLC_RESULT(void) /* nak, no details string */ len = bvlc_sc_encode_result( buf, buf_len, message_id, NULL, NULL, result_bvlc_function, 1, - &error_header_marker, &error_class, &error_code, NULL); + &error_header_marker, &test_error_class, &test_error_code, NULL); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_RESULT, message_id, NULL, NULL, true, true, 7); @@ -2173,8 +2198,8 @@ static void test_BVLC_RESULT(void) zassert_equal(message.payload.result.result, 1, NULL); zassert_equal( message.payload.result.error_header_marker, error_header_marker, NULL); - zassert_equal(message.payload.result.error_class, error_class, NULL); - zassert_equal(message.payload.result.error_code, error_code, NULL); + zassert_equal(message.payload.result.error_class, test_error_class, NULL); + zassert_equal(message.payload.result.error_code, test_error_code, NULL); zassert_equal(message.payload.result.utf8_details_string, NULL, NULL); zassert_equal(message.payload.result.utf8_details_string_len, 0, NULL); test_options( @@ -2187,9 +2212,11 @@ static void test_BVLC_RESULT(void) /* nak , details string */ len = bvlc_sc_encode_result( buf, buf_len, message_id, NULL, NULL, result_bvlc_function, 1, - &error_header_marker, &error_class, &error_code, error_details_string); + &error_header_marker, &test_error_class, &test_error_code, + error_details_string); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_RESULT, message_id, NULL, NULL, true, true, @@ -2200,8 +2227,8 @@ static void test_BVLC_RESULT(void) zassert_equal(message.payload.result.result, 1, NULL); zassert_equal( message.payload.result.error_header_marker, error_header_marker, NULL); - zassert_equal(message.payload.result.error_class, error_class, NULL); - zassert_equal(message.payload.result.error_code, error_code, NULL); + zassert_equal(message.payload.result.error_class, test_error_class, NULL); + zassert_equal(message.payload.result.error_code, test_error_code, NULL); zassert_equal( message.payload.result.utf8_details_string_len, strlen(error_details_string), NULL); @@ -2221,9 +2248,11 @@ static void test_BVLC_RESULT(void) /* dest and origin, nak , details string */ len = bvlc_sc_encode_result( buf, buf_len, message_id, &origin, &dest, result_bvlc_function, 1, - &error_header_marker, &error_class, &error_code, error_details_string); + &error_header_marker, &test_error_class, &test_error_code, + error_details_string); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_RESULT, message_id, &origin, &dest, true, true, @@ -2234,8 +2263,8 @@ static void test_BVLC_RESULT(void) zassert_equal(message.payload.result.result, 1, NULL); zassert_equal( message.payload.result.error_header_marker, error_header_marker, NULL); - zassert_equal(message.payload.result.error_class, error_class, NULL); - zassert_equal(message.payload.result.error_code, error_code, NULL); + zassert_equal(message.payload.result.error_class, test_error_class, NULL); + zassert_equal(message.payload.result.error_code, test_error_code, NULL); zassert_equal( message.payload.result.utf8_details_string_len, strlen(error_details_string), NULL); @@ -2255,18 +2284,21 @@ static void test_BVLC_RESULT(void) /* truncated message, case 1 */ len = bvlc_sc_encode_result( buf, buf_len, message_id, NULL, NULL, result_bvlc_function, 1, - &error_header_marker, &error_class, &error_code, error_details_string); + &error_header_marker, &test_error_class, &test_error_code, + error_details_string); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, 5, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 5, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* truncated message, case 2 */ - ret = bvlc_sc_decode_message(buf, 6, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 6, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); memset(buf, 0, buf_len); memset(&message, 0, sizeof(message)); @@ -2276,7 +2308,8 @@ static void test_BVLC_RESULT(void) buf, buf_len, message_id, NULL, NULL, result_bvlc_function, 0, NULL, NULL, NULL, NULL); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); test_options( buf, len, BVLC_SC_RESULT, message_id, NULL, NULL, true, false, @@ -2294,10 +2327,11 @@ static void test_BVLC_RESULT(void) len = bvlc_sc_add_option_to_data_options( buf, buf_len, buf, len, optbuf, optlen); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_INCONSISTENT_PARAMETERS, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_INCONSISTENT_PARAMETERS, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* zero payload test */ memset(buf, 0, buf_len); memset(&message, 0, sizeof(message)); @@ -2305,10 +2339,11 @@ static void test_BVLC_RESULT(void) buf, buf_len, message_id, NULL, NULL, result_bvlc_function, 0, NULL, NULL, NULL, NULL); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, 4, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 4, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_PAYLOAD_EXPECTED, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_PAYLOAD_EXPECTED, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* bad result code */ memset(buf, 0, buf_len); memset(&message, 0, sizeof(message)); @@ -2317,32 +2352,36 @@ static void test_BVLC_RESULT(void) NULL, NULL, NULL); zassert_not_equal(len, 0, NULL); buf[5] = 4; - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_PARAMETER_OUT_OF_RANGE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_PARAMETER_OUT_OF_RANGE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* utf-8 string with zero symbol inside */ len = bvlc_sc_encode_result( buf, buf_len, message_id, NULL, NULL, result_bvlc_function, 1, - &error_header_marker, &error_class, &error_code, error_details_string); + &error_header_marker, &test_error_class, &test_error_code, + error_details_string); zassert_not_equal(len, 0, NULL); buf[13] = 0; - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_INCONSISTENT_PARAMETERS, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_INCONSISTENT_PARAMETERS, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* bad payload case 1 */ memset(buf, 0, buf_len); memset(&message, 0, sizeof(message)); len = bvlc_sc_encode_result( buf, buf_len, message_id, NULL, NULL, result_bvlc_function, 1, - &error_header_marker, &error_class, &error_code, NULL); + &error_header_marker, &test_error_class, &test_error_code, NULL); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, 10, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 10, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* bad payload case 2 */ memset(buf, 0, buf_len); memset(&message, 0, sizeof(message)); @@ -2350,10 +2389,11 @@ static void test_BVLC_RESULT(void) buf, buf_len, message_id, NULL, NULL, result_bvlc_function, 0, NULL, NULL, NULL, NULL); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, 5, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 5, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* bad payload case 3 */ memset(buf, 0, buf_len); memset(&message, 0, sizeof(message)); @@ -2361,10 +2401,11 @@ static void test_BVLC_RESULT(void) buf, buf_len, message_id, NULL, NULL, result_bvlc_function, 0, NULL, NULL, NULL, NULL); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, 7, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 7, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_UNEXPECTED_DATA, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_UNEXPECTED_DATA, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); } #if defined(CONFIG_ZTEST_NEW_API) @@ -2378,8 +2419,8 @@ static void test_ENCAPSULATED_NPDU(void) uint8_t npdu[256]; size_t npdulen; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; uint16_t message_id = 0x1789; int res; BACNET_SC_VMAC_ADDRESS origin; @@ -2399,7 +2440,8 @@ static void test_ENCAPSULATED_NPDU(void) len = bvlc_sc_encode_encapsulated_npdu( buf, sizeof(buf), message_id, NULL, NULL, npdu, npdulen); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_ENCAPSULATED_NPDU, message_id, NULL, NULL, true, @@ -2424,7 +2466,8 @@ static void test_ENCAPSULATED_NPDU(void) len = bvlc_sc_encode_encapsulated_npdu( buf, sizeof(buf), message_id, &origin, NULL, npdu, npdulen); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_ENCAPSULATED_NPDU, message_id, &origin, NULL, @@ -2449,7 +2492,8 @@ static void test_ENCAPSULATED_NPDU(void) len = bvlc_sc_encode_encapsulated_npdu( buf, sizeof(buf), message_id, NULL, &dest, npdu, npdulen); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_ENCAPSULATED_NPDU, message_id, NULL, &dest, true, @@ -2474,7 +2518,8 @@ static void test_ENCAPSULATED_NPDU(void) len = bvlc_sc_encode_encapsulated_npdu( buf, sizeof(buf), message_id, &origin, &dest, npdu, npdulen); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_ENCAPSULATED_NPDU, message_id, &origin, &dest, @@ -2499,35 +2544,40 @@ static void test_ENCAPSULATED_NPDU(void) len = bvlc_sc_encode_encapsulated_npdu( buf, sizeof(buf), message_id, &origin, &dest, npdu, npdulen); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, 5, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 5, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* truncated message, case 2 */ - ret = bvlc_sc_decode_message(buf, 6, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 6, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* truncated message, case 3 */ - ret = bvlc_sc_decode_message(buf, 13, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 13, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* truncated message, case 4 */ - ret = bvlc_sc_decode_message(buf, 16, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 16, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_PAYLOAD_EXPECTED, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_PAYLOAD_EXPECTED, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* truncated message, case 5 */ - ret = bvlc_sc_decode_message(buf, 4, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 4, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* zero payload test */ memset(buf, 0, sizeof(buf)); @@ -2535,17 +2585,19 @@ static void test_ENCAPSULATED_NPDU(void) len = bvlc_sc_encode_encapsulated_npdu( buf, sizeof(buf), message_id, &origin, &dest, npdu, 0); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_PAYLOAD_EXPECTED, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_PAYLOAD_EXPECTED, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* 1 byte payload test */ memset(buf, 0, sizeof(buf)); memset(&message, 0, sizeof(message)); len = bvlc_sc_encode_encapsulated_npdu( buf, sizeof(buf), message_id, &origin, &dest, npdu, 1); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_ENCAPSULATED_NPDU, message_id, &origin, &dest, @@ -2564,8 +2616,8 @@ static void test_ADDRESS_RESOLUTION(void) uint8_t optbuf[256]; size_t optlen; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; uint16_t message_id = 0x514a; BACNET_SC_VMAC_ADDRESS origin; BACNET_SC_VMAC_ADDRESS dest; @@ -2582,7 +2634,8 @@ static void test_ADDRESS_RESOLUTION(void) len = bvlc_sc_encode_address_resolution( buf, sizeof(buf), message_id, NULL, NULL); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_ADDRESS_RESOLUTION, message_id, NULL, NULL, true, @@ -2601,7 +2654,8 @@ static void test_ADDRESS_RESOLUTION(void) len = bvlc_sc_encode_address_resolution( buf, sizeof(buf), message_id, &origin, NULL); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_ADDRESS_RESOLUTION, message_id, &origin, NULL, @@ -2618,7 +2672,8 @@ static void test_ADDRESS_RESOLUTION(void) len = bvlc_sc_encode_address_resolution( buf, sizeof(buf), message_id, NULL, &dest); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_ADDRESS_RESOLUTION, message_id, NULL, &dest, true, @@ -2635,7 +2690,8 @@ static void test_ADDRESS_RESOLUTION(void) len = bvlc_sc_encode_address_resolution( buf, sizeof(buf), message_id, &origin, &dest); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_ADDRESS_RESOLUTION, message_id, &origin, &dest, @@ -2652,39 +2708,44 @@ static void test_ADDRESS_RESOLUTION(void) len = bvlc_sc_encode_address_resolution( buf, sizeof(buf), message_id, &origin, &dest); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, 5, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 5, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* truncated message, case 2 */ - ret = bvlc_sc_decode_message(buf, 6, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 6, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* truncated message, case 3 */ - ret = bvlc_sc_decode_message(buf, 13, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 13, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* truncated message, case 5 */ - ret = bvlc_sc_decode_message(buf, 4, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 4, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* data options test */ optlen = bvlc_sc_encode_secure_path_option(optbuf, sizeof(optbuf), true); zassert_not_equal(optlen, 0, NULL); len = bvlc_sc_add_option_to_data_options( buf, sizeof(buf), buf, len, optbuf, optlen); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_INCONSISTENT_PARAMETERS, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_INCONSISTENT_PARAMETERS, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); } #if defined(CONFIG_ZTEST_NEW_API) @@ -2698,8 +2759,8 @@ static void test_ADDRESS_RESOLUTION_ACK(void) uint8_t optbuf[256]; size_t optlen; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; uint16_t message_id = 0xf1d3; int res; BACNET_SC_VMAC_ADDRESS origin; @@ -2721,7 +2782,8 @@ static void test_ADDRESS_RESOLUTION_ACK(void) buf, sizeof(buf), message_id, NULL, NULL, (uint8_t *)web_socket_uris, strlen(web_socket_uris)); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_ADDRESS_RESOLUTION_ACK, message_id, NULL, NULL, @@ -2747,7 +2809,8 @@ static void test_ADDRESS_RESOLUTION_ACK(void) buf, sizeof(buf), message_id, &origin, NULL, (uint8_t *)web_socket_uris, strlen(web_socket_uris)); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_ADDRESS_RESOLUTION_ACK, message_id, &origin, NULL, @@ -2773,7 +2836,8 @@ static void test_ADDRESS_RESOLUTION_ACK(void) buf, sizeof(buf), message_id, NULL, &dest, (uint8_t *)web_socket_uris, strlen(web_socket_uris)); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_ADDRESS_RESOLUTION_ACK, message_id, NULL, &dest, @@ -2799,7 +2863,8 @@ static void test_ADDRESS_RESOLUTION_ACK(void) buf, sizeof(buf), message_id, &origin, &dest, (uint8_t *)web_socket_uris, strlen(web_socket_uris)); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_ADDRESS_RESOLUTION_ACK, message_id, &origin, @@ -2824,7 +2889,8 @@ static void test_ADDRESS_RESOLUTION_ACK(void) len = bvlc_sc_encode_address_resolution_ack( buf, sizeof(buf), message_id, &origin, &dest, NULL, 0); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_ADDRESS_RESOLUTION_ACK, message_id, &origin, @@ -2850,45 +2916,51 @@ static void test_ADDRESS_RESOLUTION_ACK(void) buf, sizeof(buf), message_id, &origin, &dest, (uint8_t *)web_socket_uris, strlen(web_socket_uris)); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, 5, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 5, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* truncated message, case 2 */ - ret = bvlc_sc_decode_message(buf, 6, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 6, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* truncated message, case 3 */ - ret = bvlc_sc_decode_message(buf, 13, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 13, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* truncated message, case 4 */ - ret = bvlc_sc_decode_message(buf, 15, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 15, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* truncated message, case 5 */ - ret = bvlc_sc_decode_message(buf, 4, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 4, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* data options test */ optlen = bvlc_sc_encode_secure_path_option(optbuf, sizeof(optbuf), true); zassert_not_equal(optlen, 0, NULL); len = bvlc_sc_add_option_to_data_options( buf, sizeof(buf), buf, len, optbuf, optlen); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_INCONSISTENT_PARAMETERS, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_INCONSISTENT_PARAMETERS, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); } #if defined(CONFIG_ZTEST_NEW_API) @@ -2902,8 +2974,8 @@ static void test_ADVERTISIMENT(void) uint8_t optbuf[256]; size_t optlen; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; uint16_t message_id = 0xe2ad; BACNET_SC_VMAC_ADDRESS origin; BACNET_SC_VMAC_ADDRESS dest; @@ -2927,7 +2999,8 @@ static void test_ADVERTISIMENT(void) buf, sizeof(buf), message_id, NULL, NULL, hub_status, support, max_bvlc_len, max_npdu_len); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_ADVERTISIMENT, message_id, NULL, NULL, true, true, @@ -2950,7 +3023,8 @@ static void test_ADVERTISIMENT(void) buf, sizeof(buf), message_id, &origin, NULL, hub_status, support, max_bvlc_len, max_npdu_len); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_ADVERTISIMENT, message_id, &origin, NULL, true, @@ -2974,7 +3048,8 @@ static void test_ADVERTISIMENT(void) buf, sizeof(buf), message_id, NULL, &dest, hub_status, support, max_bvlc_len, max_npdu_len); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_ADVERTISIMENT, message_id, NULL, &dest, true, @@ -2999,7 +3074,8 @@ static void test_ADVERTISIMENT(void) buf, sizeof(buf), message_id, &origin, &dest, hub_status, support, max_bvlc_len, max_npdu_len); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_ADVERTISIMENT, message_id, &origin, &dest, true, @@ -3024,35 +3100,40 @@ static void test_ADVERTISIMENT(void) buf, sizeof(buf), message_id, &origin, &dest, hub_status, support, max_bvlc_len, max_npdu_len); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, 5, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 5, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* truncated message, case 2 */ - ret = bvlc_sc_decode_message(buf, 6, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 6, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* truncated message, case 3 */ - ret = bvlc_sc_decode_message(buf, 13, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 13, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* truncated message, case 4 */ - ret = bvlc_sc_decode_message(buf, 15, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 15, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* truncated message, case 5 */ - ret = bvlc_sc_decode_message(buf, 4, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 4, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* bad hub connection param */ memset(buf, 0, sizeof(buf)); @@ -3062,10 +3143,11 @@ static void test_ADVERTISIMENT(void) buf, sizeof(buf), message_id, NULL, NULL, 5, support, max_bvlc_len, max_npdu_len); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_PARAMETER_OUT_OF_RANGE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_PARAMETER_OUT_OF_RANGE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* bad support param */ memset(buf, 0, sizeof(buf)); @@ -3075,10 +3157,11 @@ static void test_ADVERTISIMENT(void) buf, sizeof(buf), message_id, NULL, NULL, hub_status, 4, max_bvlc_len, max_npdu_len); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_PARAMETER_OUT_OF_RANGE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_PARAMETER_OUT_OF_RANGE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* payload len < 6 */ memset(buf, 0, sizeof(buf)); memset(&message, 0, sizeof(message)); @@ -3087,10 +3170,11 @@ static void test_ADVERTISIMENT(void) buf, sizeof(buf), message_id, NULL, NULL, hub_status, support, max_bvlc_len, max_npdu_len); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, 5, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 5, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* zero payload test */ memset(buf, 0, sizeof(buf)); memset(&message, 0, sizeof(message)); @@ -3099,10 +3183,11 @@ static void test_ADVERTISIMENT(void) buf, sizeof(buf), message_id, NULL, NULL, hub_status, support, max_bvlc_len, max_npdu_len); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, 4, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 4, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_PAYLOAD_EXPECTED, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_PAYLOAD_EXPECTED, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* data options presented */ memset(buf, 0, sizeof(buf)); memset(&message, 0, sizeof(message)); @@ -3115,10 +3200,11 @@ static void test_ADVERTISIMENT(void) zassert_not_equal(optlen, 0, NULL); len = bvlc_sc_add_option_to_data_options( buf, sizeof(buf), buf, len, optbuf, optlen); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_INCONSISTENT_PARAMETERS, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_INCONSISTENT_PARAMETERS, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); } #if defined(CONFIG_ZTEST_NEW_API) @@ -3132,8 +3218,8 @@ static void test_ADVERTISIMENT_SOLICITATION(void) uint8_t optbuf[256]; size_t optlen; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; uint16_t message_id = 0xaf4a; BACNET_SC_VMAC_ADDRESS origin; BACNET_SC_VMAC_ADDRESS dest; @@ -3150,7 +3236,8 @@ static void test_ADVERTISIMENT_SOLICITATION(void) len = bvlc_sc_encode_advertisiment_solicitation( buf, sizeof(buf), message_id, NULL, NULL); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_ADVERTISIMENT_SOLICITATION, message_id, NULL, @@ -3169,7 +3256,8 @@ static void test_ADVERTISIMENT_SOLICITATION(void) len = bvlc_sc_encode_advertisiment_solicitation( buf, sizeof(buf), message_id, &origin, NULL); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_ADVERTISIMENT_SOLICITATION, message_id, &origin, @@ -3186,7 +3274,8 @@ static void test_ADVERTISIMENT_SOLICITATION(void) len = bvlc_sc_encode_advertisiment_solicitation( buf, sizeof(buf), message_id, NULL, &dest); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_ADVERTISIMENT_SOLICITATION, message_id, NULL, @@ -3203,7 +3292,8 @@ static void test_ADVERTISIMENT_SOLICITATION(void) len = bvlc_sc_encode_advertisiment_solicitation( buf, sizeof(buf), message_id, &origin, &dest); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_ADVERTISIMENT_SOLICITATION, message_id, &origin, @@ -3220,39 +3310,44 @@ static void test_ADVERTISIMENT_SOLICITATION(void) len = bvlc_sc_encode_advertisiment_solicitation( buf, sizeof(buf), message_id, &origin, &dest); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, 5, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 5, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* truncated message, case 2 */ - ret = bvlc_sc_decode_message(buf, 6, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 6, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* truncated message, case 3 */ - ret = bvlc_sc_decode_message(buf, 13, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 13, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* truncated message, case 5 */ - ret = bvlc_sc_decode_message(buf, 4, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 4, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* data options test */ optlen = bvlc_sc_encode_secure_path_option(optbuf, sizeof(optbuf), true); zassert_not_equal(optlen, 0, NULL); len = bvlc_sc_add_option_to_data_options( buf, sizeof(buf), buf, len, optbuf, optlen); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_INCONSISTENT_PARAMETERS, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_INCONSISTENT_PARAMETERS, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); } #if defined(CONFIG_ZTEST_NEW_API) @@ -3264,8 +3359,8 @@ static void test_CONNECT_REQUEST(void) uint8_t buf[256]; size_t len; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; uint16_t message_id = 0x41af; int res; bool ret; @@ -3285,7 +3380,8 @@ static void test_CONNECT_REQUEST(void) buf, sizeof(buf), message_id, &local_vmac, &local_uuid, max_bvlc_len, max_npdu_len); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_CONNECT_REQUEST, message_id, NULL, NULL, true, @@ -3312,49 +3408,56 @@ static void test_CONNECT_REQUEST(void) buf, sizeof(buf), message_id, &local_vmac, &local_uuid, max_bvlc_len, max_npdu_len); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, 5, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 5, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* truncated message, case 2 */ - ret = bvlc_sc_decode_message(buf, 6, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 6, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* truncated message, case 3 */ - ret = bvlc_sc_decode_message(buf, 13, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 13, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* truncated message, case 5 */ - ret = bvlc_sc_decode_message(buf, 4, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 4, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_PAYLOAD_EXPECTED, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_PAYLOAD_EXPECTED, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* message has dest */ buf[1] |= BVLC_SC_CONTROL_DEST_VADDR; - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_HEADER_ENCODING_ERROR, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_HEADER_ENCODING_ERROR, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* message has origin */ buf[1] |= BVLC_SC_CONTROL_ORIG_VADDR; buf[1] &= ~BVLC_SC_CONTROL_DEST_VADDR; - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_HEADER_ENCODING_ERROR, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_HEADER_ENCODING_ERROR, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* message has both dest and orign */ buf[1] |= BVLC_SC_CONTROL_ORIG_VADDR; buf[1] |= BVLC_SC_CONTROL_DEST_VADDR; - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_HEADER_ENCODING_ERROR, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_HEADER_ENCODING_ERROR, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); } #if defined(CONFIG_ZTEST_NEW_API) @@ -3366,8 +3469,8 @@ static void test_CONNECT_ACCEPT(void) uint8_t buf[256]; size_t len; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; uint16_t message_id = 0x0203; int res; bool ret; @@ -3387,7 +3490,8 @@ static void test_CONNECT_ACCEPT(void) buf, sizeof(buf), message_id, &local_vmac, &local_uuid, max_bvlc_len, max_npdu_len); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_CONNECT_ACCEPT, message_id, NULL, NULL, true, @@ -3414,49 +3518,56 @@ static void test_CONNECT_ACCEPT(void) buf, sizeof(buf), message_id, &local_vmac, &local_uuid, max_bvlc_len, max_npdu_len); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, 5, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 5, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* truncated message, case 2 */ - ret = bvlc_sc_decode_message(buf, 6, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 6, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* truncated message, case 3 */ - ret = bvlc_sc_decode_message(buf, 13, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 13, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* truncated message, case 5 */ - ret = bvlc_sc_decode_message(buf, 4, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 4, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_PAYLOAD_EXPECTED, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_PAYLOAD_EXPECTED, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* message has dest */ buf[1] |= BVLC_SC_CONTROL_DEST_VADDR; - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_HEADER_ENCODING_ERROR, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_HEADER_ENCODING_ERROR, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* message has origin */ buf[1] |= BVLC_SC_CONTROL_ORIG_VADDR; buf[1] &= ~BVLC_SC_CONTROL_DEST_VADDR; - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_HEADER_ENCODING_ERROR, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_HEADER_ENCODING_ERROR, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* message has both dest and orign */ buf[1] |= BVLC_SC_CONTROL_ORIG_VADDR; buf[1] |= BVLC_SC_CONTROL_DEST_VADDR; - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_HEADER_ENCODING_ERROR, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_HEADER_ENCODING_ERROR, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); } #if defined(CONFIG_ZTEST_NEW_API) @@ -3468,8 +3579,8 @@ static void test_DISCONNECT_REQUEST(void) uint8_t buf[256]; size_t len; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; uint16_t message_id = 0x0203; bool ret; const char *err_desc = NULL; @@ -3479,7 +3590,8 @@ static void test_DISCONNECT_REQUEST(void) len = bvlc_sc_encode_disconnect_request(buf, sizeof(buf), message_id); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_DISCONNECT_REQUEST, message_id, NULL, NULL, true, @@ -3495,14 +3607,16 @@ static void test_DISCONNECT_REQUEST(void) /* truncated message, case 1 */ len = bvlc_sc_encode_disconnect_request(buf, sizeof(buf), message_id); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, 5, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 5, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_UNEXPECTED_DATA, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); - ret = bvlc_sc_decode_message(buf, 3, &message, &error, &class, &err_desc); + zassert_equal(error_code, ERROR_CODE_UNEXPECTED_DATA, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); + ret = bvlc_sc_decode_message( + buf, 3, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_DISCARD, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_DISCARD, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); } #if defined(CONFIG_ZTEST_NEW_API) @@ -3514,8 +3628,8 @@ static void test_DISCONNECT_ACK(void) uint8_t buf[256]; size_t len; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; uint16_t message_id = 0x0203; bool ret; const char *err_desc = NULL; @@ -3525,7 +3639,8 @@ static void test_DISCONNECT_ACK(void) len = bvlc_sc_encode_disconnect_ack(buf, sizeof(buf), message_id); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_DISCONNECT_ACK, message_id, NULL, NULL, true, @@ -3541,14 +3656,16 @@ static void test_DISCONNECT_ACK(void) /* truncated message, case 1 */ len = bvlc_sc_encode_disconnect_request(buf, sizeof(buf), message_id); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, 5, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 5, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_UNEXPECTED_DATA, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); - ret = bvlc_sc_decode_message(buf, 3, &message, &error, &class, &err_desc); + zassert_equal(error_code, ERROR_CODE_UNEXPECTED_DATA, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); + ret = bvlc_sc_decode_message( + buf, 3, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_DISCARD, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_DISCARD, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); } #if defined(CONFIG_ZTEST_NEW_API) @@ -3560,8 +3677,8 @@ static void test_HEARTBEAT_REQUEST(void) uint8_t buf[256]; size_t len; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; uint16_t message_id = 0x0203; bool ret; const char *err_desc = NULL; @@ -3571,7 +3688,8 @@ static void test_HEARTBEAT_REQUEST(void) len = bvlc_sc_encode_heartbeat_request(buf, sizeof(buf), message_id); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_HEARTBEAT_REQUEST, message_id, NULL, NULL, true, @@ -3587,14 +3705,16 @@ static void test_HEARTBEAT_REQUEST(void) /* truncated message, case 1 */ len = bvlc_sc_encode_disconnect_request(buf, sizeof(buf), message_id); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, 5, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 5, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_UNEXPECTED_DATA, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); - ret = bvlc_sc_decode_message(buf, 3, &message, &error, &class, &err_desc); + zassert_equal(error_code, ERROR_CODE_UNEXPECTED_DATA, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); + ret = bvlc_sc_decode_message( + buf, 3, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_DISCARD, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_DISCARD, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); } #if defined(CONFIG_ZTEST_NEW_API) @@ -3608,8 +3728,8 @@ static void test_HEARTBEAT_ACK(void) uint8_t optbuf[256]; size_t optlen; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; uint16_t message_id = 0x0203; bool ret; const char *err_desc = NULL; @@ -3619,7 +3739,8 @@ static void test_HEARTBEAT_ACK(void) len = bvlc_sc_encode_heartbeat_ack(buf, sizeof(buf), message_id); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_HEARTBEAT_ACK, message_id, NULL, NULL, true, true, @@ -3635,24 +3756,27 @@ static void test_HEARTBEAT_ACK(void) /* truncated message, case 1 */ len = bvlc_sc_encode_heartbeat_ack(buf, sizeof(buf), message_id); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, 5, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 5, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_UNEXPECTED_DATA, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); - ret = bvlc_sc_decode_message(buf, 3, &message, &error, &class, &err_desc); + zassert_equal(error_code, ERROR_CODE_UNEXPECTED_DATA, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); + ret = bvlc_sc_decode_message( + buf, 3, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_DISCARD, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_DISCARD, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* data options test */ optlen = bvlc_sc_encode_secure_path_option(optbuf, sizeof(optbuf), true); zassert_not_equal(optlen, 0, NULL); len = bvlc_sc_add_option_to_data_options( buf, sizeof(buf), buf, len, optbuf, optlen); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_INCONSISTENT_PARAMETERS, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_INCONSISTENT_PARAMETERS, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); } #if defined(CONFIG_ZTEST_NEW_API) @@ -3666,8 +3790,8 @@ static void test_PROPRIETARY_MESSAGE(void) uint8_t optbuf[256]; size_t optlen; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; uint16_t message_id = 0x4455; int res; bool ret; @@ -3690,7 +3814,8 @@ static void test_PROPRIETARY_MESSAGE(void) buf, sizeof(buf), message_id, NULL, NULL, vendor_id, proprietary_function, data, sizeof(data)); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_PROPRIETARY_MESSAGE, message_id, NULL, NULL, true, @@ -3716,7 +3841,8 @@ static void test_PROPRIETARY_MESSAGE(void) buf, sizeof(buf), message_id, &origin, NULL, vendor_id, proprietary_function, data, sizeof(data)); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_PROPRIETARY_MESSAGE, message_id, &origin, NULL, @@ -3742,7 +3868,8 @@ static void test_PROPRIETARY_MESSAGE(void) buf, sizeof(buf), message_id, NULL, &dest, vendor_id, proprietary_function, data, sizeof(data)); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_PROPRIETARY_MESSAGE, message_id, NULL, &dest, @@ -3768,7 +3895,8 @@ static void test_PROPRIETARY_MESSAGE(void) buf, sizeof(buf), message_id, &origin, &dest, vendor_id, proprietary_function, data, sizeof(data)); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = verify_bsc_bvll_header( &message.hdr, BVLC_SC_PROPRIETARY_MESSAGE, message_id, &origin, &dest, @@ -3794,29 +3922,33 @@ static void test_PROPRIETARY_MESSAGE(void) buf, sizeof(buf), message_id, &origin, &dest, vendor_id, proprietary_function, data, sizeof(data)); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, 5, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 5, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* truncated message, case 2 */ - ret = bvlc_sc_decode_message(buf, 6, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 6, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* truncated message, case 3 */ - ret = bvlc_sc_decode_message(buf, 13, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 13, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* truncated message, case 5 */ - ret = bvlc_sc_decode_message(buf, 18, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 18, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* data options test */ optlen = bvlc_sc_encode_secure_path_option(optbuf, sizeof(optbuf), true); @@ -3824,10 +3956,11 @@ static void test_PROPRIETARY_MESSAGE(void) len = bvlc_sc_add_option_to_data_options( buf, sizeof(buf), buf, len, optbuf, optlen); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_INCONSISTENT_PARAMETERS, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_INCONSISTENT_PARAMETERS, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* zero payload test */ memset(buf, 0, sizeof(buf)); @@ -3838,13 +3971,15 @@ static void test_PROPRIETARY_MESSAGE(void) buf, sizeof(buf), message_id, NULL, NULL, vendor_id, proprietary_function, data, sizeof(data)); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, 4, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 4, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_PAYLOAD_EXPECTED, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_PAYLOAD_EXPECTED, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* zero payload test */ - ret = bvlc_sc_decode_message(buf, 7, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 7, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); zassert_equal(message.payload.proprietary.vendor_id, vendor_id, NULL); zassert_equal( @@ -3866,8 +4001,8 @@ static void test_BAD_HEADER_OPTIONS(void) size_t len; size_t optlen; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; uint16_t message_id = 0x0203; bool ret; uint16_t vendor_id1; @@ -3889,10 +4024,11 @@ static void test_BAD_HEADER_OPTIONS(void) len = bvlc_sc_add_option_to_data_options( buf, sizeof(buf), buf, len, optbuf, optlen); buf[4] |= BVLC_SC_HEADER_DATA; - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_HEADER_ENCODING_ERROR, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_HEADER_ENCODING_ERROR, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); /* form unknown header option */ @@ -3904,10 +4040,11 @@ static void test_BAD_HEADER_OPTIONS(void) len = bvlc_sc_add_option_to_data_options( buf, sizeof(buf), buf, len, optbuf, optlen); buf[4] |= 2; - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_HEADER_ENCODING_ERROR, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_HEADER_ENCODING_ERROR, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); memset(buf, 0, sizeof(buf)); memset(&message, 0, sizeof(message)); @@ -3922,10 +4059,11 @@ static void test_BAD_HEADER_OPTIONS(void) len = bvlc_sc_add_option_to_data_options( buf, sizeof(buf), buf, len, optbuf, optlen); buf[4] |= 2; - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_HEADER_ENCODING_ERROR, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_HEADER_ENCODING_ERROR, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); memset(buf, 0, sizeof(buf)); memset(&message, 0, sizeof(message)); @@ -3942,10 +4080,11 @@ static void test_BAD_HEADER_OPTIONS(void) zassert_not_equal(optlen, 0, NULL); len = bvlc_sc_add_option_to_data_options( buf, sizeof(buf), buf, len, optbuf, optlen); - ret = bvlc_sc_decode_message(buf, 6, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 6, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); memset(buf, 0, sizeof(buf)); memset(&message, 0, sizeof(message)); @@ -3964,10 +4103,11 @@ static void test_BAD_HEADER_OPTIONS(void) len = bvlc_sc_add_option_to_data_options( buf, sizeof(buf), buf, len, optbuf, optlen); - ret = bvlc_sc_decode_message(buf, 9, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 9, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); memset(buf, 0, sizeof(buf)); memset(&message, 0, sizeof(message)); @@ -3984,10 +4124,11 @@ static void test_BAD_HEADER_OPTIONS(void) len = bvlc_sc_add_option_to_destination_options( buf, sizeof(buf), buf, len, optbuf, optlen); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, 4, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, 4, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_MESSAGE_INCOMPLETE, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); memset(buf, 0, sizeof(buf)); memset(&message, 0, sizeof(message)); @@ -4097,7 +4238,7 @@ static void test_BAD_ENCODE_PARAMS(void) uint8_t error_header_marker = 0xcc; uint16_t error_class = 0xaa; uint16_t error_code = 0xdd; - char *error_details_string = "something bad has happend"; + const char *error_details_string = "something bad has happend"; BACNET_SC_VMAC_ADDRESS local_vmac; BACNET_SC_UUID local_uuid; uint8_t data[34]; @@ -4173,13 +4314,13 @@ static void test_BAD_ENCODE_PARAMS(void) zassert_equal(len, 0, NULL); /* case 13 */ len = bvlc_sc_encode_result( - buf, 7, message_id, NULL, NULL, 1, 1, &error_header_marker, &error_code, - &error_class, error_details_string); + buf, 7, message_id, NULL, NULL, 1, 1, &error_header_marker, + &error_class, &error_code, error_details_string); zassert_equal(len, 0, NULL); /* case 13 */ len = bvlc_sc_encode_result( buf, 12, message_id, NULL, NULL, 1, 1, &error_header_marker, - &error_code, &error_class, error_details_string); + &error_class, &error_code, error_details_string); zassert_equal(len, 0, NULL); /* case 14 */ len = bvlc_sc_encode_encapsulated_npdu( @@ -4244,8 +4385,8 @@ static void test_BAD_DECODE_PARAMS(void) uint16_t npdulen = 50; size_t len; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; uint16_t message_id = 0x0203; bool ret; const char *err_desc = NULL; @@ -4258,15 +4399,17 @@ static void test_BAD_DECODE_PARAMS(void) len = bvlc_sc_encode_encapsulated_npdu( buf, sizeof(buf), message_id, NULL, NULL, npdu, npdulen); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, NULL, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, NULL, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); /* case 2 */ buf[0] = 99; - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, false, NULL); - zassert_equal(error, ERROR_CODE_BVLC_FUNCTION_UNKNOWN, NULL); - zassert_equal(class, ERROR_CLASS_COMMUNICATION, NULL); + zassert_equal(error_code, ERROR_CODE_BVLC_FUNCTION_UNKNOWN, NULL); + zassert_equal(error_class, ERROR_CLASS_COMMUNICATION, NULL); memset(buf, 0, sizeof(buf)); memset(&message, 0, sizeof(message)); } @@ -4284,8 +4427,8 @@ static void test_BROADCAST(void) bool ret; uint8_t *pdu; BVLC_SC_DECODED_MESSAGE message; - BACNET_ERROR_CODE error; - BACNET_ERROR_CLASS class; + uint16_t error_code; + uint16_t error_class; const char *err_desc = NULL; BACNET_SC_UUID uuid = { { 0x34 } }; @@ -4329,68 +4472,78 @@ static void test_BROADCAST(void) zassert_equal(len, 4, NULL); len = bvlc_sc_remove_orig_and_dest(&pdu, len); zassert_equal(len, 4, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = bvlc_sc_need_send_bvlc_result(&message); zassert_equal(ret, true, NULL); len = bvlc_sc_encode_advertisiment_solicitation( buf, sizeof(buf), 0xF00D, NULL, &dest); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = bvlc_sc_need_send_bvlc_result(&message); zassert_equal(ret, false, NULL); len = bvlc_sc_encode_connect_request( buf, sizeof(buf), 0xF00D, &orig, &uuid, 1000, 1000); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = bvlc_sc_need_send_bvlc_result(&message); zassert_equal(ret, true, NULL); len = bvlc_sc_encode_connect_accept( buf, sizeof(buf), 0xF00D, &orig, &uuid, 1000, 1000); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = bvlc_sc_need_send_bvlc_result(&message); zassert_equal(ret, false, NULL); len = bvlc_sc_encode_disconnect_request(buf, sizeof(buf), 0xF00D); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = bvlc_sc_need_send_bvlc_result(&message); zassert_equal(ret, true, NULL); len = bvlc_sc_encode_encapsulated_npdu( buf, sizeof(buf), 0xF00D, NULL, NULL, (uint8_t *)&orig, sizeof(orig)); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = bvlc_sc_need_send_bvlc_result(&message); zassert_equal(ret, true, NULL); len = bvlc_sc_encode_proprietary_message( buf, sizeof(buf), 0xF00D, NULL, NULL, 123, 123, NULL, 0); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = bvlc_sc_need_send_bvlc_result(&message); zassert_equal(ret, false, NULL); len = bvlc_sc_encode_heartbeat_request(buf, sizeof(buf), 0xF00D); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = bvlc_sc_need_send_bvlc_result(&message); zassert_equal(ret, true, NULL); len = bvlc_sc_encode_address_resolution(buf, sizeof(buf), 0xF00D, NULL, NULL); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = bvlc_sc_need_send_bvlc_result(&message); zassert_equal(ret, true, NULL); len = bvlc_sc_encode_advertisiment_solicitation( buf, sizeof(buf), 0xF00D, NULL, NULL); zassert_not_equal(len, 0, NULL); - ret = bvlc_sc_decode_message(buf, len, &message, &error, &class, &err_desc); + ret = bvlc_sc_decode_message( + buf, len, &message, &error_code, &error_class, &err_desc); zassert_equal(ret, true, NULL); ret = bvlc_sc_need_send_bvlc_result(&message); zassert_equal(ret, true, NULL);