From 4cce32549ebc9e1b403ff25a65f551af3ab9b080 Mon Sep 17 00:00:00 2001 From: Jacob Keeler Date: Thu, 19 Sep 2019 15:09:25 -0400 Subject: Fix coverity issues (#3036) * Fix coverity issues Fixes CIDs 203808, 203807, 203806, 203804, 203803, 203802, 203800, 203798, 203797, 203795, and 203793 * Add virtual destructor --- .../include/application_manager/hmi_state.h | 24 +++++++++++----------- .../include/rc_rpc_plugin/interior_data_manager.h | 1 + .../src/custom_vehicle_data_manager_impl.cc | 4 ++-- .../policy/policy_external/src/policy_helper.cc | 2 +- .../policy_external/src/policy_manager_impl.cc | 1 + .../policy/policy_regular/src/policy_helper.cc | 4 ++-- .../policy_regular/src/policy_manager_impl.cc | 1 + .../protocol_handler/src/protocol_handler_impl.cc | 10 +++++---- .../include/transport_manager/cloud/cloud_device.h | 2 +- .../transport_manager/src/cloud/cloud_device.cc | 2 +- .../src/usb/usb_device_scanner.cc | 12 +++++------ 11 files changed, 34 insertions(+), 29 deletions(-) diff --git a/src/components/application_manager/include/application_manager/hmi_state.h b/src/components/application_manager/include/application_manager/hmi_state.h index e8c2f8b914..5b9e201391 100644 --- a/src/components/application_manager/include/application_manager/hmi_state.h +++ b/src/components/application_manager/include/application_manager/hmi_state.h @@ -63,18 +63,18 @@ class HmiState { * If no events occurred STATE_ID_DEFAULT should be presented */ enum StateID { - STATE_ID_CURRENT, - STATE_ID_REGULAR, - STATE_ID_POSTPONED, - STATE_ID_PHONE_CALL, - STATE_ID_SAFETY_MODE, - STATE_ID_VR_SESSION, - STATE_ID_TTS_SESSION, - STATE_ID_VIDEO_STREAMING, - STATE_ID_NAVI_STREAMING, - STATE_ID_DEACTIVATE_HMI, - STATE_ID_AUDIO_SOURCE, - STATE_ID_EMBEDDED_NAVI + STATE_ID_CURRENT = 1, + STATE_ID_REGULAR = 2, + STATE_ID_POSTPONED = 3, + STATE_ID_PHONE_CALL = 4, + STATE_ID_SAFETY_MODE = 5, + STATE_ID_VR_SESSION = 6, + STATE_ID_TTS_SESSION = 7, + STATE_ID_VIDEO_STREAMING = 8, + STATE_ID_NAVI_STREAMING = 9, + STATE_ID_DEACTIVATE_HMI = 10, + STATE_ID_AUDIO_SOURCE = 11, + STATE_ID_EMBEDDED_NAVI = 12 }; /** diff --git a/src/components/application_manager/rpc_plugins/rc_rpc_plugin/include/rc_rpc_plugin/interior_data_manager.h b/src/components/application_manager/rpc_plugins/rc_rpc_plugin/include/rc_rpc_plugin/interior_data_manager.h index 42ae7ea4fe..c1fe30fa4d 100644 --- a/src/components/application_manager/rpc_plugins/rc_rpc_plugin/include/rc_rpc_plugin/interior_data_manager.h +++ b/src/components/application_manager/rpc_plugins/rc_rpc_plugin/include/rc_rpc_plugin/interior_data_manager.h @@ -49,6 +49,7 @@ typedef std::pair ModuleUid; class InteriorDataManager { public: + virtual ~InteriorDataManager() {} /** * @brief OnPolicyEvent Processes policy related events * @param event Policy event diff --git a/src/components/application_manager/rpc_plugins/vehicle_info_plugin/src/custom_vehicle_data_manager_impl.cc b/src/components/application_manager/rpc_plugins/vehicle_info_plugin/src/custom_vehicle_data_manager_impl.cc index 32cf2b957e..334c876d76 100644 --- a/src/components/application_manager/rpc_plugins/vehicle_info_plugin/src/custom_vehicle_data_manager_impl.cc +++ b/src/components/application_manager/rpc_plugins/vehicle_info_plugin/src/custom_vehicle_data_manager_impl.cc @@ -252,7 +252,7 @@ void CustomVehicleDataManagerImpl::UpdateVehicleDataItems() { auto vehicle_data_items = get_custom_vdi(); - auto get_ischema_item = [](VehicleDataItem item, + auto get_ischema_item = [](const VehicleDataItem& item, SMemberType type, std::vector history = {}) -> SMember { switch (type) { @@ -336,7 +336,7 @@ void CustomVehicleDataManagerImpl::UpdateVehicleDataItems() { std::copy_if(vehicle_data_items.begin(), vehicle_data_items.end(), std::back_inserter(result), - [&name](VehicleDataItem item) { return item.name == name; }); + [&name](VehicleDataItem& item) { return item.name == name; }); std::sort(result.begin(), result.end(), diff --git a/src/components/policy/policy_external/src/policy_helper.cc b/src/components/policy/policy_external/src/policy_helper.cc index 99e4450065..98e5b5b3c1 100644 --- a/src/components/policy/policy_external/src/policy_helper.cc +++ b/src/components/policy/policy_external/src/policy_helper.cc @@ -114,7 +114,7 @@ bool operator!=(const policy_table::ApplicationParams& first, for (; it_first != it_first_end; ++it_first) { CompareGroupName gp(*it_first); StringsConstItr it = std::find_if(it_second, it_second_end, gp); - if (it_first_end == it) { + if (it_second_end == it) { return true; } } diff --git a/src/components/policy/policy_external/src/policy_manager_impl.cc b/src/components/policy/policy_external/src/policy_manager_impl.cc index 95d3011b33..bd3c5ef658 100644 --- a/src/components/policy/policy_external/src/policy_manager_impl.cc +++ b/src/components/policy/policy_external/src/policy_manager_impl.cc @@ -2012,6 +2012,7 @@ AppPermissions PolicyManagerImpl::GetAppPermissionsChanges( permissions.appPermissionsConsentNeeded = IsConsentNeeded(device_id, policy_app_id); permissions.appRevoked = IsApplicationRevoked(policy_app_id); + permissions.isSDLAllowed = false; GetPriority(permissions.application_id, &permissions.priority); } return permissions; diff --git a/src/components/policy/policy_regular/src/policy_helper.cc b/src/components/policy/policy_regular/src/policy_helper.cc index c6116584f8..b689ed81ba 100644 --- a/src/components/policy/policy_regular/src/policy_helper.cc +++ b/src/components/policy/policy_regular/src/policy_helper.cc @@ -113,7 +113,7 @@ bool operator!=(const policy_table::ApplicationParams& first, for (; it_first != it_first_end; ++it_first) { CompareGroupName gp(*it_first); StringsConstItr it = std::find_if(it_second, it_second_end, gp); - if (it_first_end == it) { + if (it_second_end == it) { return true; } } @@ -438,7 +438,7 @@ bool CheckAppPolicy::operator()(const AppPoliciesValueType& app_policy) { const auto& snapshot_app_policy_end = snapshot_->policy_table.app_policies_section.apps.end(); - auto find_app = [&app_id](AppPoliciesValueType app) { + auto find_app = [&app_id](AppPoliciesValueType& app) { return app_id == app.second.get_string(); }; diff --git a/src/components/policy/policy_regular/src/policy_manager_impl.cc b/src/components/policy/policy_regular/src/policy_manager_impl.cc index 9e5cf01493..a48fe7d197 100644 --- a/src/components/policy/policy_regular/src/policy_manager_impl.cc +++ b/src/components/policy/policy_regular/src/policy_manager_impl.cc @@ -1365,6 +1365,7 @@ AppPermissions PolicyManagerImpl::GetAppPermissionsChanges( permissions.appPermissionsConsentNeeded = IsConsentNeeded(device_id, policy_app_id); permissions.appRevoked = IsApplicationRevoked(policy_app_id); + permissions.isSDLAllowed = true; GetPriority(permissions.application_id, &permissions.priority); } return permissions; diff --git a/src/components/protocol_handler/src/protocol_handler_impl.cc b/src/components/protocol_handler/src/protocol_handler_impl.cc index 1df830908a..61b9afd7bc 100644 --- a/src/components/protocol_handler/src/protocol_handler_impl.cc +++ b/src/components/protocol_handler/src/protocol_handler_impl.cc @@ -493,8 +493,9 @@ void ProtocolHandlerImpl::SendStartSessionNAck( BsonArray rejectedParamsArr; bson_array_initialize(&rejectedParamsArr, rejectedParams.size()); for (std::string param : rejectedParams) { - char paramPtr[255]; - strncpy(paramPtr, param.c_str(), 255); + char paramPtr[256]; + strncpy(paramPtr, param.c_str(), sizeof(paramPtr)); + paramPtr[sizeof(paramPtr) - 1] = '\0'; bson_array_add_string(&rejectedParamsArr, paramPtr); } bson_object_put_array( @@ -555,8 +556,9 @@ void ProtocolHandlerImpl::SendEndSessionNAck( BsonArray rejectedParamsArr; bson_array_initialize(&rejectedParamsArr, rejectedParams.size()); for (std::string param : rejectedParams) { - char paramPtr[255]; - strncpy(paramPtr, param.c_str(), 255); + char paramPtr[256]; + strncpy(paramPtr, param.c_str(), sizeof(paramPtr)); + paramPtr[sizeof(paramPtr) - 1] = '\0'; bson_array_add_string(&rejectedParamsArr, paramPtr); } bson_object_put_array( diff --git a/src/components/transport_manager/include/transport_manager/cloud/cloud_device.h b/src/components/transport_manager/include/transport_manager/cloud/cloud_device.h index 9c25be2a3e..15d23bba7f 100644 --- a/src/components/transport_manager/include/transport_manager/cloud/cloud_device.h +++ b/src/components/transport_manager/include/transport_manager/cloud/cloud_device.h @@ -55,7 +55,7 @@ class CloudDevice : public Device { public: CloudDevice(std::string& host, std::string& port, std::string& name); - CloudDevice(CloudAppEndpoint endpoint, std::string& name); + CloudDevice(CloudAppEndpoint& endpoint, std::string& name); virtual const std::string& GetHost() const; diff --git a/src/components/transport_manager/src/cloud/cloud_device.cc b/src/components/transport_manager/src/cloud/cloud_device.cc index c1ad186ded..9225589d57 100644 --- a/src/components/transport_manager/src/cloud/cloud_device.cc +++ b/src/components/transport_manager/src/cloud/cloud_device.cc @@ -49,7 +49,7 @@ CloudDevice::CloudDevice(std::string& host, .query = "", .fragment = ""}) {} -CloudDevice::CloudDevice(CloudAppEndpoint endpoint, std::string& name) +CloudDevice::CloudDevice(CloudAppEndpoint& endpoint, std::string& name) : Device(name, std::string(name)), endpoint_(endpoint) {} bool CloudDevice::IsSameAs(const Device* other) const { diff --git a/src/components/transport_manager/src/usb/usb_device_scanner.cc b/src/components/transport_manager/src/usb/usb_device_scanner.cc index cff42123a4..51d521c1bf 100644 --- a/src/components/transport_manager/src/usb/usb_device_scanner.cc +++ b/src/components/transport_manager/src/usb/usb_device_scanner.cc @@ -182,12 +182,12 @@ AoaInitSequence::AoaInitSequence(const TransportManagerSettings& settings) auto uri = settings.aoa_filter_uri().c_str(); auto serial_num = settings.aoa_filter_serial_number().c_str(); AddTransfer(new AoaGetProtocolRequest); - AddTransfer(new AoaSendIdString(0, manufacturer, sizeof(manufacturer))); - AddTransfer(new AoaSendIdString(1, model_name, sizeof(model_name))); - AddTransfer(new AoaSendIdString(2, description, sizeof(description))); - AddTransfer(new AoaSendIdString(3, version, sizeof(version))); - AddTransfer(new AoaSendIdString(4, uri, sizeof(uri))); - AddTransfer(new AoaSendIdString(5, serial_num, sizeof(serial_num))); + AddTransfer(new AoaSendIdString(0, manufacturer, strlen(manufacturer))); + AddTransfer(new AoaSendIdString(1, model_name, strlen(model_name))); + AddTransfer(new AoaSendIdString(2, description, strlen(description))); + AddTransfer(new AoaSendIdString(3, version, strlen(version))); + AddTransfer(new AoaSendIdString(4, uri, strlen(uri))); + AddTransfer(new AoaSendIdString(5, serial_num, strlen(serial_num))); AddTransfer(new AoaTurnIntoAccessoryMode); } -- cgit v1.2.1