diff --git a/obuspa/Makefile b/obuspa/Makefile index cdb886454..aafeb2bcb 100644 --- a/obuspa/Makefile +++ b/obuspa/Makefile @@ -5,13 +5,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=obuspa -PKG_VERSION:=10.0.0.14 +PKG_VERSION:=10.0.4.1 LOCAL_DEV:=0 ifneq ($(LOCAL_DEV),1) PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://dev.iopsys.eu/bbf/obuspa.git -PKG_SOURCE_VERSION:=aeda0145e269cad49d326800fbd39d87c0d30087 +PKG_SOURCE_VERSION:=6b888812299de0d836a8dcf33bc899ec8ff16030 PKG_MAINTAINER:=Vivek Dutta PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz PKG_MIRROR_HASH:=skip diff --git a/obuspa/patches/0002-fix_e2e_session_init.patch b/obuspa/patches/0002-fix_e2e_session_init.patch index 7b9b5d008..6c9e24be4 100644 --- a/obuspa/patches/0002-fix_e2e_session_init.patch +++ b/obuspa/patches/0002-fix_e2e_session_init.patch @@ -1,8 +1,8 @@ -Index: obuspa-10.0.0.1/src/core/device_controller.c +Index: obuspa-10.0.4.0/src/core/device_controller.c =================================================================== ---- obuspa-10.0.0.1.orig/src/core/device_controller.c -+++ obuspa-10.0.0.1/src/core/device_controller.c -@@ -4211,6 +4211,14 @@ int ProcessControllerAdded(int cont_inst +--- obuspa-10.0.4.0.orig/src/core/device_controller.c ++++ obuspa-10.0.4.0/src/core/device_controller.c +@@ -4214,6 +4214,14 @@ int ProcessControllerAdded(int cont_inst goto exit; } @@ -17,7 +17,7 @@ Index: obuspa-10.0.0.1/src/core/device_controller.c // Exit if unable to get the object instance numbers present in this controller's MTP table USP_SNPRINTF(path, sizeof(path), "%s.%d.MTP", device_cont_root, cont_instance); err = DATA_MODEL_GetInstances(path, &iv); -@@ -4252,14 +4260,6 @@ int ProcessControllerAdded(int cont_inst +@@ -4255,14 +4263,6 @@ int ProcessControllerAdded(int cont_inst DEVICE_MQTT_UpdateControllerTopics(); #endif diff --git a/obuspa/patches/0004-bulkdata_extn.patch b/obuspa/patches/0004-bulkdata_extn.patch index 6865c16eb..abf4e2bec 100644 --- a/obuspa/patches/0004-bulkdata_extn.patch +++ b/obuspa/patches/0004-bulkdata_extn.patch @@ -1,7 +1,7 @@ -Index: obuspa-10.0.0.1/src/core/bdc_exec.c +Index: obuspa-10.0.4.0/src/core/bdc_exec.c =================================================================== ---- obuspa-10.0.0.1.orig/src/core/bdc_exec.c -+++ obuspa-10.0.0.1/src/core/bdc_exec.c +--- obuspa-10.0.4.0.orig/src/core/bdc_exec.c ++++ obuspa-10.0.4.0/src/core/bdc_exec.c @@ -549,10 +549,25 @@ int StartSendingReport(bdc_connection_t // Set the list of headers @@ -30,10 +30,10 @@ Index: obuspa-10.0.0.1/src/core/bdc_exec.c bc->headers = curl_slist_append(bc->headers, "Content-Encoding: gzip"); } -Index: obuspa-10.0.0.1/src/core/bdc_exec.h +Index: obuspa-10.0.4.0/src/core/bdc_exec.h =================================================================== ---- obuspa-10.0.0.1.orig/src/core/bdc_exec.h -+++ obuspa-10.0.0.1/src/core/bdc_exec.h +--- obuspa-10.0.4.0.orig/src/core/bdc_exec.h ++++ obuspa-10.0.4.0/src/core/bdc_exec.h @@ -54,6 +54,8 @@ void BDC_EXEC_ScheduleExit(void); #define BDC_FLAG_PUT 0x00000001 // If set, HTTP PUT should be used instead of HTTP POST when sending the report to the BDC server #define BDC_FLAG_GZIP 0x00000002 // If set, the reports contants are Gzipped @@ -45,10 +45,10 @@ Index: obuspa-10.0.0.1/src/core/bdc_exec.h +#define BDC_FLAG_HEADER_PER_ROW 0x00000020 // If set, report format in header would be csv ParameterPerRow +#define BDC_FLAG_HEADER_PER_COL 0x00000040 // If set, report format in header would be csv ParameterPerColumn #endif -Index: obuspa-10.0.0.1/src/core/device_bulkdata.c +Index: obuspa-10.0.4.0/src/core/device_bulkdata.c =================================================================== ---- obuspa-10.0.0.1.orig/src/core/device_bulkdata.c -+++ obuspa-10.0.0.1/src/core/device_bulkdata.c +--- obuspa-10.0.4.0.orig/src/core/device_bulkdata.c ++++ obuspa-10.0.4.0/src/core/device_bulkdata.c @@ -71,8 +71,12 @@ //------------------------------------------------------------------------------ @@ -95,7 +95,7 @@ Index: obuspa-10.0.0.1/src/core/device_bulkdata.c int Validate_BulkDataHTTPMethod(dm_req_t *req, char *value); @@ -247,7 +259,8 @@ bulkdata_profile_t *bulkdata_find_free_p bulkdata_profile_t *bulkdata_find_profile(int profile_id); - int bulkdata_calc_report_map(bulkdata_profile_t *bp, kv_vector_t *report_map); + int bulkdata_calc_report_map(bulkdata_profile_t *bp, kv_vector_t *report_map, combined_role_t *combined_role); int bulkdata_reduce_to_alt_name(char *spec, char *path, char *alt_name, char *out_buf, int buf_len); -char *bulkdata_generate_json_report(bulkdata_profile_t *bp, char *report_timestamp); +char *bulkdata_generate_json_report(bulkdata_profile_t *bp, char *report_timestamp, char *report_format); @@ -103,16 +103,16 @@ Index: obuspa-10.0.0.1/src/core/device_bulkdata.c unsigned char *bulkdata_compress_report(profile_ctrl_params_t *ctrl, char *input_buf, int input_len, int *p_output_len); int bulkdata_schedule_sending_http_report(profile_ctrl_params_t *ctrl, bulkdata_profile_t *bp, unsigned char *json_report, int report_len); int bulkdata_start_profile(bulkdata_profile_t *bp); -@@ -262,6 +275,8 @@ char *bulkdata_platform_calc_uri_query_s - int bulkdata_platform_get_param_refs(int profile_id, param_ref_vector_t *param_refs); - void bulkdata_expand_param_ref(param_ref_entry_t *pr, group_get_vector_t *ggv); +@@ -263,6 +276,8 @@ int bulkdata_platform_get_param_refs(int + int bulkdata_platform_calc_combined_role(int instance, combined_role_t **bulkdata_role, combined_role_t *combined_role, int *cont_instance); + void bulkdata_expand_param_ref(param_ref_entry_t *pr, group_get_vector_t *ggv, combined_role_t *combined_role); void bulkdata_append_to_result_map(param_ref_entry_t *pr, group_get_vector_t *ggv, kv_vector_t *report_map); +void append_string_to_target(char *str, char **output); +char *csv_encode(const char *str); + int GetAuto_BulkDataController(dm_req_t *req, char *buf, int len); #ifdef ENABLE_MQTT int Validate_BulkDataMqttReference(dm_req_t *req, char *value); - void bulkdata_process_profile_mqtt(bulkdata_profile_t *bp); -@@ -299,7 +314,7 @@ int DEVICE_BULKDATA_Init(void) +@@ -301,7 +316,7 @@ int DEVICE_BULKDATA_Init(void) err |= USP_REGISTER_VendorParam_ReadOnly("Device.BulkData.Status", Get_BulkDataGlobalStatus, DM_STRING); err |= USP_REGISTER_Param_Constant("Device.BulkData.MinReportingInterval", BULKDATA_MINIMUM_REPORTING_INTERVAL_STR, DM_UINT); err |= USP_REGISTER_Param_SupportedList("Device.BulkData.Protocols", bdc_protocols, NUM_ELEM(bdc_protocols)); @@ -121,7 +121,7 @@ Index: obuspa-10.0.0.1/src/core/device_bulkdata.c err |= USP_REGISTER_Param_Constant("Device.BulkData.ParameterWildCardSupported", "true", DM_BOOL); err |= USP_REGISTER_Param_Constant("Device.BulkData.MaxNumberOfProfiles", BULKDATA_MAX_PROFILES_STR, DM_INT); err |= USP_REGISTER_Param_Constant("Device.BulkData.MaxNumberOfParameterReferences", "-1", DM_INT); -@@ -314,7 +329,7 @@ int DEVICE_BULKDATA_Init(void) +@@ -316,7 +331,7 @@ int DEVICE_BULKDATA_Init(void) err |= USP_REGISTER_DBParam_ReadWrite("Device.BulkData.Profile.{i}.Name", "", NULL, NULL, DM_STRING); err |= USP_REGISTER_DBParam_ReadWrite("Device.BulkData.Profile.{i}.NumberOfRetainedFailedReports", "0", Validate_NumberOfRetainedFailedReports, NULL, DM_INT); err |= USP_REGISTER_DBParam_ReadWrite("Device.BulkData.Profile.{i}.Protocol", BULKDATA_PROTOCOL_HTTP, Validate_BulkDataProtocol, NULL, DM_STRING); @@ -129,8 +129,8 @@ Index: obuspa-10.0.0.1/src/core/device_bulkdata.c + err |= USP_REGISTER_DBParam_ReadWrite("Device.BulkData.Profile.{i}.EncodingType", BULKDATA_ENCODING_TYPE_JSON, Validate_BulkDataEncodingType, NULL, DM_STRING); err |= USP_REGISTER_DBParam_ReadWrite("Device.BulkData.Profile.{i}.ReportingInterval", "86400", Validate_BulkDataReportingInterval, NotifyChange_BulkDataReportingInterval, DM_UINT); err |= USP_REGISTER_DBParam_ReadWrite("Device.BulkData.Profile.{i}.TimeReference", UNKNOWN_TIME_STR, NULL, NotifyChange_BulkDataTimeReference, DM_DATETIME); - -@@ -326,9 +341,16 @@ int DEVICE_BULKDATA_Init(void) + err |= USP_REGISTER_DBParam_ReadOnlyAuto("Device.BulkData.Profile.{i}.Controller", GetAuto_BulkDataController, DM_STRING); +@@ -329,9 +344,16 @@ int DEVICE_BULKDATA_Init(void) err |= USP_REGISTER_DBParam_ReadWrite("Device.BulkData.Profile.{i}.Parameter.{i}.Reference", "", Validate_BulkDataReference, NULL, DM_STRING); // Device.BulkData.Profile.{i}.JSONEncoding @@ -148,7 +148,7 @@ Index: obuspa-10.0.0.1/src/core/device_bulkdata.c // Device.BulkData.Profile.{i}.HTTP err |= USP_REGISTER_DBParam_ReadWrite("Device.BulkData.Profile.{i}.HTTP.URL", "", NULL, NotifyChange_BulkDataURL, DM_STRING); err |= USP_REGISTER_DBParam_ReadWrite("Device.BulkData.Profile.{i}.HTTP.Username", "", NULL, NULL, DM_STRING); -@@ -614,9 +636,10 @@ int Validate_BulkDataProtocol(dm_req_t * +@@ -687,9 +709,10 @@ int Validate_BulkDataProtocol(dm_req_t * int Validate_BulkDataEncodingType(dm_req_t *req, char *value) { // Exit if trying to set a value outside of the range we accept @@ -162,7 +162,7 @@ Index: obuspa-10.0.0.1/src/core/device_bulkdata.c return USP_ERR_INVALID_VALUE; } -@@ -720,9 +743,36 @@ int Validate_BulkDataReference(dm_req_t +@@ -793,9 +816,36 @@ int Validate_BulkDataReference(dm_req_t int Validate_BulkDataReportFormat(dm_req_t *req, char *value) { // Exit if trying to set a value outside of the range we accept @@ -201,7 +201,7 @@ Index: obuspa-10.0.0.1/src/core/device_bulkdata.c return USP_ERR_INVALID_VALUE; } -@@ -2053,6 +2103,14 @@ int bulkdata_platform_get_profile_contro +@@ -2151,6 +2201,14 @@ int bulkdata_platform_get_profile_contro return err; } @@ -216,7 +216,7 @@ Index: obuspa-10.0.0.1/src/core/device_bulkdata.c // Exit if unable to get ReportTimestamp USP_SNPRINTF(path, sizeof(path), "Device.BulkData.Profile.%d.JSONEncoding.ReportTimestamp", bp->profile_id); err = DATA_MODEL_GetParameterValue(path, ctrl_params->report_timestamp, sizeof(ctrl_params->report_timestamp), 0); -@@ -2061,6 +2119,54 @@ int bulkdata_platform_get_profile_contro +@@ -2159,6 +2217,54 @@ int bulkdata_platform_get_profile_contro return err; } @@ -271,7 +271,7 @@ Index: obuspa-10.0.0.1/src/core/device_bulkdata.c #ifdef ENABLE_MQTT { char protocol[32]; -@@ -2334,7 +2440,7 @@ void bulkdata_process_profile_http(bulkd +@@ -2492,7 +2598,7 @@ void bulkdata_process_profile_http(bulkd { int err; report_t *cur_report; @@ -280,7 +280,7 @@ Index: obuspa-10.0.0.1/src/core/device_bulkdata.c profile_ctrl_params_t ctrl; unsigned char *compressed_report; int compressed_len; -@@ -2373,10 +2479,23 @@ void bulkdata_process_profile_http(bulkd +@@ -2541,26 +2647,39 @@ void bulkdata_process_profile_http(bulkd } // Exit if unable to generate the report @@ -308,7 +308,9 @@ Index: obuspa-10.0.0.1/src/core/device_bulkdata.c return; } -@@ -2385,14 +2504,14 @@ void bulkdata_process_profile_http(bulkd + // Print out the JSON report, if debugging is enabled +- USP_LOG_Info("\nBULK DATA: %sing at time %s, to url=%s", ctrl.method, iso8601_cur_time(buf, sizeof(buf)), ctrl.url); ++ USP_LOG_Info("BULK DATA: %sing at time %s, to url=%s", ctrl.method, iso8601_cur_time(buf, sizeof(buf)), ctrl.url); USP_LOG_Info("BULK DATA: using compression method=%s", ctrl.compression); if (enable_protocol_trace) { @@ -327,7 +329,7 @@ Index: obuspa-10.0.0.1/src/core/device_bulkdata.c } // NOTE: From this point on, only the compressed_report exists -@@ -2422,8 +2541,15 @@ void bulkdata_process_profile_usp_event( +@@ -2590,8 +2709,15 @@ void bulkdata_process_profile_usp_event( kv_vector_t event_args; kv_pair_t kv; report_t *cur_report; @@ -341,11 +343,11 @@ Index: obuspa-10.0.0.1/src/core/device_bulkdata.c + char escape_char[10]; + char csv_format[20]; + char row_timestamp[33]; - - // Exit if the MTP has not been connected to successfully after bootup - // This is to prevent BDC events being enqueued before the Boot! event is sent (the Boot! event is only sent after successfully connecting to the MTP). -@@ -2432,13 +2558,63 @@ void bulkdata_process_profile_usp_event( - goto exit; + combined_role_t *bulkdata_role; + combined_role_t combined_role; + int cont_instance; +@@ -2610,13 +2736,63 @@ void bulkdata_process_profile_usp_event( + return; } - // Exit if unable to get ReportTimestamp @@ -415,7 +417,7 @@ Index: obuspa-10.0.0.1/src/core/device_bulkdata.c // When sending via USP events, only one report is ever sent in each USP event // So ensure all retained reports are removed. NOTE: Clearing the reports here is only necessary when switching protocol from HTTP to USP event, and where HTTP had some unsent reports -@@ -2456,11 +2632,17 @@ void bulkdata_process_profile_usp_event( +@@ -2634,11 +2810,17 @@ void bulkdata_process_profile_usp_event( } bp->num_retained_reports = 1; @@ -436,7 +438,7 @@ Index: obuspa-10.0.0.1/src/core/device_bulkdata.c return; } -@@ -2468,15 +2650,15 @@ void bulkdata_process_profile_usp_event( +@@ -2646,15 +2828,15 @@ void bulkdata_process_profile_usp_event( // Construct event_args manually to avoid the overhead of a malloc and copy of the report in KV_VECTOR_Add() kv.key = "Data"; @@ -446,7 +448,7 @@ Index: obuspa-10.0.0.1/src/core/device_bulkdata.c event_args.num_entries = 1; USP_SNPRINTF(path, sizeof(path), "Device.BulkData.Profile.%d.Push!", bp->profile_id); - DEVICE_SUBSCRIPTION_ProcessAllEventCompleteSubscriptions(path, &event_args); + DEVICE_SUBSCRIPTION_ProcessAllEventCompleteSubscriptions(path, &event_args, cont_instance); - // Free the report. No need to free the event_args as json_report is the only thing dynamically allocated in it - free(json_report); // The report is not allocated via USP_MALLOC @@ -455,7 +457,7 @@ Index: obuspa-10.0.0.1/src/core/device_bulkdata.c // From the point of view of this code, the report(s) have been successfully sent, so don't retain them // NOTE: Sending of the reports successfully is delegated to the USP notification retry mechanism -@@ -2548,11 +2730,24 @@ void bulkdata_process_profile_mqtt(bulkd +@@ -2736,15 +2918,28 @@ void bulkdata_process_profile_mqtt(bulkd } // Exit if unable to generate the report @@ -485,7 +487,21 @@ Index: obuspa-10.0.0.1/src/core/device_bulkdata.c } // Print out the JSON report, if debugging is enabled -@@ -2763,7 +2958,7 @@ int bulkdata_reduce_to_alt_name(char *sp +- USP_LOG_Debug("\nBULK DATA: Sending at time %s to MQTT topic %s", iso8601_cur_time(buf, sizeof(buf)), ctrl.mqtt_publish_topic); ++ USP_LOG_Debug("BULK DATA: Sending at time %s to MQTT topic %s", iso8601_cur_time(buf, sizeof(buf)), ctrl.mqtt_publish_topic); + if (enable_protocol_trace) + { + USP_LOG_String(kLogLevel_Info, kLogType_Protocol, report); +@@ -2939,7 +3134,7 @@ int bulkdata_reduce_to_alt_name(char *sp + + /*********************************************************************//** + ** +-** bulkdata_generate_json_report ++** bulkdata_generate_json_name_value_pair_report + ** + ** Generates a JSON name-value pair format report + ** NOTE: The report contains all retained failed reports, as well as the current report +@@ -2951,7 +3146,7 @@ int bulkdata_reduce_to_alt_name(char *sp ** \return pointer to NULL terminated dynamically allocated buffer containing the serialized report to send ** **************************************************************************/ @@ -494,7 +510,7 @@ Index: obuspa-10.0.0.1/src/core/device_bulkdata.c { JsonNode *top; // top of report JsonNode *array; // array of reports (retained + current) -@@ -2868,6 +3063,483 @@ char *bulkdata_generate_json_report(bulk +@@ -3056,6 +3251,483 @@ char *bulkdata_generate_json_report(bulk return result; } @@ -978,7 +994,7 @@ Index: obuspa-10.0.0.1/src/core/device_bulkdata.c /*********************************************************************//** ** ** bulkdata_compress_report -@@ -3071,6 +3743,20 @@ int bulkdata_schedule_sending_http_repor +@@ -3259,6 +3931,20 @@ int bulkdata_schedule_sending_http_repor flags |= BDC_FLAG_DATE_HEADER; } diff --git a/obuspa/patches/0006-contains-expression.patch b/obuspa/patches/0006-contains-expression.patch index e91b7fce0..f9cfb4226 100644 --- a/obuspa/patches/0006-contains-expression.patch +++ b/obuspa/patches/0006-contains-expression.patch @@ -1,7 +1,7 @@ -Index: obuspa-10.0.0.1/src/core/expr_vector.c +Index: obuspa-10.0.4.0/src/core/expr_vector.c =================================================================== ---- obuspa-10.0.0.1.orig/src/core/expr_vector.c -+++ obuspa-10.0.0.1/src/core/expr_vector.c +--- obuspa-10.0.4.0.orig/src/core/expr_vector.c ++++ obuspa-10.0.4.0/src/core/expr_vector.c @@ -59,6 +59,7 @@ char *expr_op_2_str[kExprOp_Max] = "<", // kExprOp_LessThan ">", // kExprOp_GreaterThan @@ -10,7 +10,7 @@ Index: obuspa-10.0.0.1/src/core/expr_vector.c }; -@@ -483,6 +484,15 @@ char *SplitOnOperator(char *buf, expr_op +@@ -487,6 +488,15 @@ char *SplitOnOperator(char *buf, expr_op *op = '\0'; return &op[2]; } @@ -26,10 +26,10 @@ Index: obuspa-10.0.0.1/src/core/expr_vector.c // Exit if found the "<" operator op = strchr(buf, '<'); -Index: obuspa-10.0.0.1/src/core/path_resolver.c +Index: obuspa-10.0.4.0/src/core/path_resolver.c =================================================================== ---- obuspa-10.0.0.1.orig/src/core/path_resolver.c -+++ obuspa-10.0.0.1/src/core/path_resolver.c +--- obuspa-10.0.4.0.orig/src/core/path_resolver.c ++++ obuspa-10.0.4.0/src/core/path_resolver.c @@ -1088,7 +1088,7 @@ int ResolveUniqueKey(char *resolved, cha char temp[MAX_DM_PATH]; bool is_match; @@ -107,10 +107,10 @@ Index: obuspa-10.0.0.1/src/core/path_resolver.c // Determine the function to call to perform the comparison if (type_flags & (DM_INT | DM_UINT | DM_ULONG | DM_LONG | DM_DECIMAL)) { -Index: obuspa-10.0.0.1/src/include/usp_api.h +Index: obuspa-10.0.4.0/src/include/usp_api.h =================================================================== ---- obuspa-10.0.0.1.orig/src/include/usp_api.h -+++ obuspa-10.0.0.1/src/include/usp_api.h +--- obuspa-10.0.4.0.orig/src/include/usp_api.h ++++ obuspa-10.0.4.0/src/include/usp_api.h @@ -106,6 +106,7 @@ typedef enum kExprOp_LessThan, // '<' kExprOp_GreaterThan, // '>' diff --git a/obuspa/patches/1000-SecuredRole-bbfdm.patch b/obuspa/patches/1000-SecuredRole-bbfdm.patch index c01b16573..7c203428f 100644 --- a/obuspa/patches/1000-SecuredRole-bbfdm.patch +++ b/obuspa/patches/1000-SecuredRole-bbfdm.patch @@ -1,8 +1,8 @@ -Index: obuspa-10.0.0.2/src/core/device.h +Index: obuspa-10.0.4.0/src/core/device.h =================================================================== ---- obuspa-10.0.0.2.orig/src/core/device.h -+++ obuspa-10.0.0.2/src/core/device.h -@@ -305,6 +305,8 @@ void DEVICE_CTRUST_ApplyPermissionsToSub +--- obuspa-10.0.4.0.orig/src/core/device.h ++++ obuspa-10.0.4.0/src/core/device.h +@@ -310,6 +310,8 @@ void DEVICE_CTRUST_ApplyPermissionsToSub char *DEVICE_CTRUST_InstSelToPermTarget(int role_index, void *is, int *perm_instance); int DEVICE_CTRUST_SetRoleParameter(int instance, char *param_name, char *new_value); int DEVICE_CTRUST_SetPermissionParameter(int instance1, int instance2, char *param_name, char *new_value); @@ -11,11 +11,11 @@ Index: obuspa-10.0.0.2/src/core/device.h int DEVICE_REQUEST_Init(void); int DEVICE_REQUEST_Add(char *path, char *command_key, int *instance); void DEVICE_REQUEST_OperationComplete(int instance, int err_code, char *err_msg, kv_vector_t *output_args); -Index: obuspa-10.0.0.2/src/core/device_ctrust.c +Index: obuspa-10.0.4.0/src/core/device_ctrust.c =================================================================== ---- obuspa-10.0.0.2.orig/src/core/device_ctrust.c -+++ obuspa-10.0.0.2/src/core/device_ctrust.c -@@ -235,6 +235,7 @@ credential_t *FindCredentialByCertInstan +--- obuspa-10.0.4.0.orig/src/core/device_ctrust.c ++++ obuspa-10.0.4.0/src/core/device_ctrust.c +@@ -236,6 +236,7 @@ credential_t *FindCredentialByCertInstan int Get_CredentialRole(dm_req_t *req, char *buf, int len); int Get_CredentialCertificate(dm_req_t *req, char *buf, int len); int Get_CredentialNumEntries(dm_req_t *req, char *buf, int len); @@ -23,7 +23,7 @@ Index: obuspa-10.0.0.2/src/core/device_ctrust.c #ifndef REMOVE_DEVICE_SECURITY int InitChallengeTable(); -@@ -354,6 +355,10 @@ int DEVICE_CTRUST_Init(void) +@@ -355,6 +356,10 @@ int DEVICE_CTRUST_Init(void) challenge_response_input_args, NUM_ELEM(challenge_response_input_args), NULL, 0); #endif @@ -34,7 +34,7 @@ Index: obuspa-10.0.0.2/src/core/device_ctrust.c // Exit if any errors occurred if (err != USP_ERR_OK) { -@@ -2908,3 +2913,139 @@ exit: +@@ -2939,3 +2944,139 @@ exit: return err; } #endif // REMOVE_DEVICE_SECURITY diff --git a/obuspa/patches/1002-mqtt-qos.patch b/obuspa/patches/1002-mqtt-qos.patch index e3475a757..65139aaf6 100644 --- a/obuspa/patches/1002-mqtt-qos.patch +++ b/obuspa/patches/1002-mqtt-qos.patch @@ -1,8 +1,8 @@ -Index: obuspa-10.0.0.1/src/core/device_bulkdata.c +Index: obuspa-10.0.4.0/src/core/device_bulkdata.c =================================================================== ---- obuspa-10.0.0.1.orig/src/core/device_bulkdata.c -+++ obuspa-10.0.0.1/src/core/device_bulkdata.c -@@ -375,6 +375,8 @@ int DEVICE_BULKDATA_Init(void) +--- obuspa-10.0.4.0.orig/src/core/device_bulkdata.c ++++ obuspa-10.0.4.0/src/core/device_bulkdata.c +@@ -378,6 +378,8 @@ int DEVICE_BULKDATA_Init(void) // Device.BulkData.Profile.{i}.MQTT err |= USP_REGISTER_DBParam_ReadWrite("Device.BulkData.Profile.{i}.MQTT.Reference", "", Validate_BulkDataMqttReference, NULL, DM_STRING); err |= USP_REGISTER_DBParam_ReadWrite("Device.BulkData.Profile.{i}.MQTT.PublishTopic", "", NULL, NULL, DM_STRING); diff --git a/obuspa/patches/2001-validate-controller-mtp.patch b/obuspa/patches/2001-validate-controller-mtp.patch index dd143852a..7ad67f881 100644 --- a/obuspa/patches/2001-validate-controller-mtp.patch +++ b/obuspa/patches/2001-validate-controller-mtp.patch @@ -1,8 +1,8 @@ -Index: obuspa-10.0.0.2/src/core/device.h +Index: obuspa-10.0.4.0/src/core/device.h =================================================================== ---- obuspa-10.0.0.2.orig/src/core/device.h -+++ obuspa-10.0.0.2/src/core/device.h -@@ -346,6 +346,10 @@ void DEVICE_CONTROLLER_SetInheritedRole( +--- obuspa-10.0.4.0.orig/src/core/device.h ++++ obuspa-10.0.4.0/src/core/device.h +@@ -352,6 +352,10 @@ void DEVICE_CONTROLLER_SetInheritedRole( int DEVICE_CONTROLLER_CountEnabledWebsockClientConnections(void); #endif @@ -13,10 +13,10 @@ Index: obuspa-10.0.0.2/src/core/device.h #ifndef REMOVE_USP_BROKER int DEVICE_SUBSCRIPTION_RouteNotification(Usp__Msg *usp, int instance, char *subscribed_path); bool DEVICE_SUBSCRIPTION_MarkVendorLayerSubs(int broker_instance, subs_notify_t notify_type, char *path, int group_id); -Index: obuspa-10.0.0.2/src/core/device_controller.c +Index: obuspa-10.0.4.0/src/core/device_controller.c =================================================================== ---- obuspa-10.0.0.2.orig/src/core/device_controller.c -+++ obuspa-10.0.0.2/src/core/device_controller.c +--- obuspa-10.0.4.0.orig/src/core/device_controller.c ++++ obuspa-10.0.4.0/src/core/device_controller.c @@ -968,6 +968,78 @@ int DEVICE_CONTROLLER_QueueBinaryMessage return USP_ERR_OK; } @@ -96,10 +96,10 @@ Index: obuspa-10.0.0.2/src/core/device_controller.c /*********************************************************************//** ** ** DEVICE_CONTROLLER_IsMTPConfigured -Index: obuspa-10.0.0.2/src/core/msg_handler.c +Index: obuspa-10.0.4.0/src/core/msg_handler.c =================================================================== ---- obuspa-10.0.0.2.orig/src/core/msg_handler.c -+++ obuspa-10.0.0.2/src/core/msg_handler.c +--- obuspa-10.0.4.0.orig/src/core/msg_handler.c ++++ obuspa-10.0.4.0/src/core/msg_handler.c @@ -1220,6 +1220,15 @@ int ValidateUspRecord(UspRecord__Record usp_service_instance = USP_BROKER_GetUspServiceInstance(rec->from_id, 0); #endif