kaa_error_t kaa_init(kaa_context_t **kaa_context_p) { KAA_RETURN_IF_NIL(kaa_context_p, KAA_ERR_BADPARAM); // Initialize logger kaa_logger_t *logger = NULL; FILE *logfile = fopen("run.log", "w"); kaa_error_t error = kaa_log_create(&logger, KAA_MAX_LOG_MESSAGE_LENGTH, KAA_MAX_LOG_LEVEL, logfile); // TODO: make log destination configurable if (error) return error; KAA_LOG_INFO(logger, KAA_ERR_NONE, "Kaa SDK version %s, commit hash %s", BUILD_VERSION, BUILD_COMMIT_HASH); // Initialize general Kaa context error = kaa_context_create(kaa_context_p, logger); if (error) { KAA_LOG_FATAL(logger, error, "Failed to create Kaa context"); kaa_log_destroy(logger); *kaa_context_p = NULL; return error; } // Initialize endpoint identity char *pub_key_buffer = NULL; size_t pub_key_buffer_size = 0; bool need_deallocation = false; ext_get_endpoint_public_key(&pub_key_buffer, &pub_key_buffer_size, &need_deallocation); kaa_digest pub_key_hash; error = ext_calculate_sha_hash(pub_key_buffer, pub_key_buffer_size, pub_key_hash); if (need_deallocation && pub_key_buffer_size > 0) { KAA_FREE(pub_key_buffer); } if (error) { KAA_LOG_FATAL(logger, error, "Failed to calculate EP ID"); kaa_context_destroy(*kaa_context_p); *kaa_context_p = NULL; kaa_log_destroy(logger); return error; } error = ext_copy_sha_hash((*kaa_context_p)->status->status_instance->endpoint_public_key_hash, pub_key_hash); if (error) { KAA_LOG_FATAL(logger, error, "Failed to set Endpoint public key"); kaa_context_destroy(*kaa_context_p); *kaa_context_p = NULL; kaa_log_destroy(logger); return error; } return KAA_ERR_NONE; }
int test_deinit(void) { kaa_status_destroy(status); kaa_log_destroy(logger); return 0; }
int test_deinit(void) { kaa_channel_manager_destroy(channel_manager); kaa_status_destroy(status); kaa_log_destroy(logger); return 0; }
int test_deinit(void) { kaa_bootstrap_manager_destroy(bootstrap_manager); kaa_channel_manager_destroy(channel_manager); kaa_log_destroy(logger); ext_log_upload_strategy_destroy(strategy); return 0; }
int test_deinit(void) { #ifndef KAA_DISABLE_FEATURE_CONFIGURATION kaa_status_destroy(status); kaa_configuration_manager_destroy(config_manager); #endif kaa_log_destroy(logger); return 0; }
kaa_error_t kaa_deinit(kaa_context_t *kaa_context) { KAA_RETURN_IF_NIL(kaa_context, KAA_ERR_BADPARAM); kaa_logger_t *logger = kaa_context->logger; kaa_error_t error = kaa_context_destroy(kaa_context); if (error) KAA_LOG_ERROR(logger, error, "Failed to destroy Kaa context"); kaa_log_destroy(logger); return error; }
int test_deinit(void) { kaa_log_destroy(logger); return 0; }