* Copyright (c) 2012 - 2013 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Kyuho Jo <kyuho.jo@samsung.com>, Sunghyun Kwon <sh0701.kwon@samsung.com>
-*
+*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* This file contains functionality related to KNOX
* to interact with email-service.
* @file email-core-container.c
- * @author
+ * @author
* @version 0.1
- * @brief This file contains functionality to provide KNOX support in email-service.
+ * @brief This file contains functionality to provide KNOX support in email-service.
*/
#ifdef __FEATURE_CONTAINER_ENABLE__
#include <vasum.h>
EM_DEBUG_FUNC_END();
}
-static gboolean mainloop_callback(GIOChannel *channel, GIOCondition condition, void *data)
+#ifdef __FEATURE_CONTAINER_ENABLE__
+static gboolean mainloop_callback(GIOChannel *channel, GIOCondition condition, void *data)
{
EM_DEBUG_FUNC_BEGIN();
-#ifdef __FEATURE_CONTAINER_ENABLE__
vsm_context_h ctx = (vsm_context_h)data;
EM_DEBUG_LOG("Enter event loop");
vsm_enter_eventloop(ctx, 0, 0);
EM_DEBUG_LOG("Finish event loop");
-#endif /* __FEATURE_CONTAINER_ENABLE__ */
EM_DEBUG_FUNC_END();
return TRUE;
}
+#endif /* __FEATURE_CONTAINER_ENABLE__ */
INTERNAL_FUNC void emcore_bind_vsm_context()
{
zone_name = EM_SAFE_STRDUP(vsm_get_zone_name(zone));
if (EM_SAFE_STRLEN(zone_name) > 0)
zone_name_list = g_list_append(zone_name_list, zone_name);
-
+
EM_DEBUG_FUNC_END();
}
#endif /* __FEATURE_CONTAINER_ENABLE__ */
{
EM_DEBUG_FUNC_BEGIN();
int err = EMAIL_ERROR_NONE;
- int ret = 0;
GList *zone_name_list = NULL;
GList *node = NULL;
}
#ifdef __FEATURE_CONTAINER_ENABLE__
+ int ret = 0;
+
if (container == NULL) {
EM_DEBUG_EXCEPTION("Not initialize");
err = EMAIL_ERROR_CONTAINER_CREATE_FAILED;
node = g_list_first(zone_name_list);
while (node != NULL) {
/* Free the domain name */
- EM_SAFE_FREE(node->data);
+ EM_SAFE_FREE(node->data);
node = g_list_next(node);
}
g_list_free(zone_name_list);
* Copyright (c) 2015 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Sunghyun Kwon <sh0701.kwon@samsung.com>, Minsoo Kim <minnsoo.kim@samsung.com>
-*
+*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* @file email-core-cynara.c
* @author sh0701.kwon@samsung.com
* @version 0.1
- * @brief This file contains functionality to provide cynara support in email-service.
+ * @brief This file contains functionality to provide cynara support in email-service.
*/
#include <pthread.h>
#include <cynara-client.h>
#include <cynara-session.h>
#include <cynara-creds-commons.h>
+#include <cynara-creds-socket.h>
#include "email-debug-log.h"
#include "email-utilities.h"
ret = cynara_initialize(&(cynara_info->email_cynara), NULL);
if (ret != CYNARA_API_SUCCESS) {
cynara_strerror(ret, errno_buf, ERRNO_BUF_SIZE);
- EM_DEBUG_EXCEPTION("cynara_initialize failed : [%d], error : [%s]",
+ EM_DEBUG_EXCEPTION("cynara_initialize failed : [%d], error : [%s]",
ret,
errno_buf);
err = EMAIL_ERROR_NOT_INITIALIZED;
ret = cynara_creds_get_default_client_method(&(cynara_info->client_method));
if (ret != CYNARA_API_SUCCESS) {
cynara_strerror(ret, errno_buf, ERRNO_BUF_SIZE);
- EM_DEBUG_EXCEPTION("cynara_creds_get_default_client_method failed : [%d], error : [%s]",
+ EM_DEBUG_EXCEPTION("cynara_creds_get_default_client_method failed : [%d], error : [%s]",
ret,
errno_buf);
err = EMAIL_ERROR_NOT_INITIALIZED;
ret = cynara_creds_get_default_user_method(&(cynara_info->user_method));
if (ret != CYNARA_API_SUCCESS) {
cynara_strerror(ret, errno_buf, ERRNO_BUF_SIZE);
- EM_DEBUG_EXCEPTION("cynara_creds_get_default_user_method failed : [%d], error : [%s]",
+ EM_DEBUG_EXCEPTION("cynara_creds_get_default_user_method failed : [%d], error : [%s]",
ret,
errno_buf);
err = EMAIL_ERROR_NOT_INITIALIZED;
ret = cynara_finish(cynara_info->email_cynara);
if (ret != CYNARA_API_SUCCESS) {
cynara_strerror(ret, errno_buf, ERRNO_BUF_SIZE);
- EM_DEBUG_EXCEPTION("cynara_finish failed : [%d], error : [%s]",
- ret,
+ EM_DEBUG_EXCEPTION("cynara_finish failed : [%d], error : [%s]",
+ ret,
errno_buf);
}
EM_SAFE_FREE(cynara_info);
return err;
}
}
-
+
err = EMAIL_ERROR_PERMISSION_DENIED;
pid_t client_pid = 0;
ret = cynara_creds_socket_get_user(socket_fd, cynara_info->user_method, &client_uid);
if (ret != CYNARA_API_SUCCESS) {
cynara_strerror(ret, errno_buf, ERRNO_BUF_SIZE);
- EM_DEBUG_EXCEPTION("cynara_creds_socket_get_user failed : [%d], error : [%s]",
- ret,
+ EM_DEBUG_EXCEPTION("cynara_creds_socket_get_user failed : [%d], error : [%s]",
+ ret,
errno_buf);
goto FINISH_OFF;
}
ret = cynara_creds_socket_get_pid(socket_fd, &client_pid);
if (ret != CYNARA_API_SUCCESS) {
cynara_strerror(ret, errno_buf, ERRNO_BUF_SIZE);
- EM_DEBUG_EXCEPTION("cynara_creds_socket_get_pid failed : [%d], error : [%s]",
- ret,
+ EM_DEBUG_EXCEPTION("cynara_creds_socket_get_pid failed : [%d], error : [%s]",
+ ret,
errno_buf);
goto FINISH_OFF;
}
client_session = cynara_session_from_pid(client_pid);
if (client_session == NULL) {
cynara_strerror(ret, errno_buf, ERRNO_BUF_SIZE);
- EM_DEBUG_EXCEPTION("cynara_session_from_pid failed error : [%s]",
+ EM_DEBUG_EXCEPTION("cynara_session_from_pid failed error : [%s]",
errno_buf);
goto FINISH_OFF;
}
- ret = cynara_check(cynara_info->email_cynara, client_smack, client_session, client_uid,
+ ret = cynara_check(cynara_info->email_cynara, client_smack, client_session, client_uid,
"http://tizen.org/privilege/email");
if (ret != CYNARA_API_ACCESS_ALLOWED) {
cynara_strerror(ret, errno_buf, ERRNO_BUF_SIZE);
- EM_DEBUG_EXCEPTION("cynara_check failed : [%d], error : [%s]",
+ EM_DEBUG_EXCEPTION("cynara_check failed : [%d], error : [%s]",
ret,
errno_buf);
goto FINISH_OFF;
#include "email-utilities.h"
/* Adding '/' method for system daemon */
+/*
static char *add_shared_owner_prefix(const char *name)
{
EM_DEBUG_FUNC_BEGIN();
EM_DEBUG_FUNC_END();
return ckm_alias;
}
+*/
/* Add new data */
INTERNAL_FUNC int emcore_add_password_in_key_manager(char *data_name, char *stored_data)
X509_free(x509_cert);
}
- EM_SAFE_FREE(in_cert);
+ if(in_cert)
+ free((char *)in_cert);
+
EM_SAFE_FREE(temp_recipients);
if (token_address)
mail_free_address(&token_address);
/* for safety DB operation */
static pthread_mutex_t _db_handle_lock = PTHREAD_MUTEX_INITIALIZER;
-/* for safety secure-storage operation */
-static pthread_mutex_t _ss_handle_lock = PTHREAD_MUTEX_INITIALIZER;
#define _MULTIPLE_DB_HANDLE
}
-static int _get_stmt_field_data_string_without_allocation(DB_STMT hStmt, char *buf, int buffer_size, int ucs2, int index)
-{
- if (!hStmt || !buf || (index < 0)) { /*prevent 39620*/
- EM_DEBUG_EXCEPTION("hStmt[%d], buf[%p], buffer_size[%d], index[%d]", hStmt, buf, buffer_size, index);
- return false;
- }
-
- int sLen = 0;
- sLen = sqlite3_column_bytes(hStmt, index);
-
-#ifdef _PRINT_STORAGE_LOG_
- EM_DEBUG_LOG("_get_stmt_field_data_string_without_allocation sqlite3_column_bytes sLen[%d]", sLen);
-#endif
-
- if (sLen > 0) {
- memset(buf, 0, buffer_size);
- strncpy(buf, (char *)sqlite3_column_text(hStmt, index), buffer_size - 1);
- } else
- g_strlcpy(buf, "", buffer_size);
-
-#ifdef _PRINT_STORAGE_LOG_
- EM_DEBUG_LOG("buf[%s], index[%d]", buf, index);
-#endif
-
- return false;
-}
-
static int _bind_stmt_field_data_char(DB_STMT hStmt, int index, char value)
{
if ((hStmt == NULL) || (index < 0)) {
}
}
- if (!emstorage_delete_dir(MAILHOME, &error)) {
+ if (!emstorage_delete_dir((char *)MAILHOME, &error)) {
EM_DEBUG_EXCEPTION("emstorage_delete_dir failed");
goto FINISH_OFF;
}
}
if (err == EMAIL_ERROR_CONTAINER_NOT_INITIALIZATION) {
- err = emcore_get_canonicalize_path(EMAIL_SERVICE_DB_FILE_PATH, &output_file_path);
+ err = emcore_get_canonicalize_path((char *)EMAIL_SERVICE_DB_FILE_PATH, &output_file_path);
if (err != EMAIL_ERROR_NONE) {
EM_DEBUG_EXCEPTION("emcore_get_canonicalize_path failed : [%d]", err);
goto FINISH_OFF;
}
if (error == EMAIL_ERROR_CONTAINER_NOT_INITIALIZATION) {
- if ((error = emcore_get_canonicalize_path(EMAIL_SERVICE_DB_FILE_PATH, &output_file_path)) != EMAIL_ERROR_NONE) {
+ if ((error = emcore_get_canonicalize_path((char *)EMAIL_SERVICE_DB_FILE_PATH, &output_file_path)) != EMAIL_ERROR_NONE) {
EM_DEBUG_EXCEPTION("emcore_get_canonicalize_path failed : [%d]", error);
goto FINISH_OFF;
}
goto FINISH_OFF;
}
- err = emcore_load_query_from_file(EMAIL_SERVICE_CREATE_TABLE_QUERY_FILE_PATH, &create_table_query, &query_len);
+ err = emcore_load_query_from_file((char *)EMAIL_SERVICE_CREATE_TABLE_QUERY_FILE_PATH, &create_table_query, &query_len);
if (err != EMAIL_ERROR_NONE) {
EM_DEBUG_EXCEPTION("emcore_load_sql_from_file failed [%d]", err);
goto FINISH_OFF;
sqlite3 *local_db_handle = emstorage_get_db_connection(multi_user_name);
- error = emcore_load_query_from_file(EMAIL_SERVICE_CREATE_TABLE_QUERY_FILE_PATH, &create_table_query, &query_len);
+ error = emcore_load_query_from_file((char *)EMAIL_SERVICE_CREATE_TABLE_QUERY_FILE_PATH, &create_table_query, &query_len);
if (error != EMAIL_ERROR_NONE) {
EM_DEBUG_EXCEPTION("emcore_load_sql_from_file failed [%d]", error);
goto FINISH_OFF2;
int i = 0;
int rc = -1, ret = false;
int error = EMAIL_ERROR_NONE;
- int error_from_ssm = 0;
DB_STMT hStmt = NULL;
char sql_query_string[QUERY_SIZE] = {0, };
char recv_password_file_name[MAX_PW_FILE_NAME_LENGTH];
sqlite3 *local_db_handle = emstorage_get_db_connection(multi_user_name);
EMSTORAGE_START_WRITE_TRANSACTION(multi_user_name, transaction, error);
- if (!emstorage_delete_dir(MAILHOME, &error)) {
+ if (!emstorage_delete_dir((char *)MAILHOME, &error)) {
EM_DEBUG_EXCEPTION(" emstorage_delete_dir failed - %d", error);
goto FINISH_OFF;
_bind_stmt_field_data_string(hStmt, ALIAS_SENDER_IDX_IN_MAIL_TBL, "send_alias", 1, FROM_EMAIL_ADDRESS_LEN_IN_MAIL_TBL);
_bind_stmt_field_data_string(hStmt, ALIAS_RECIPIENT_IDX_IN_MAIL_TBL, "recipient_alias", 1, TO_EMAIL_ADDRESS_LEN_IN_MAIL_TBL);
_bind_stmt_field_data_int(hStmt, BODY_DOWNLOAD_STATUS_IDX_IN_MAIL_TBL, 1);
- _bind_stmt_field_data_string(hStmt, FILE_PATH_PLAIN_IDX_IN_MAIL_TBL, MAILHOME_UTF8, 0, TEXT_1_LEN_IN_MAIL_TBL);
+ _bind_stmt_field_data_string(hStmt, FILE_PATH_PLAIN_IDX_IN_MAIL_TBL, (char *)MAILHOME_UTF8, 0, TEXT_1_LEN_IN_MAIL_TBL);
_bind_stmt_field_data_string(hStmt, FILE_PATH_HTML_IDX_IN_MAIL_TBL, "", 0, TEXT_2_LEN_IN_MAIL_TBL);
_bind_stmt_field_data_int(hStmt, MAIL_SIZE_IDX_IN_MAIL_TBL, 4);
_bind_stmt_field_data_char(hStmt, FLAGS_SEEN_FIELD_IDX_IN_MAIL_TBL, 0);
};
- error = emcore_load_query_from_file(EMAIL_SERVICE_CREATE_TABLE_QUERY_FILE_PATH, &create_table_query, &query_len);
+ error = emcore_load_query_from_file((char *)EMAIL_SERVICE_CREATE_TABLE_QUERY_FILE_PATH, &create_table_query, &query_len);
if (error != EMAIL_ERROR_NONE) {
EM_DEBUG_EXCEPTION("emcore_load_sql_from_file failed [%d]", error);
static gboolean testapp_test_backup_account()
{
- char *file_name = tzplatform_mkpath(TZ_SYS_DATA, "email/accounts_file");
+ char *file_name = (char *)tzplatform_mkpath(TZ_SYS_DATA, "email/accounts_file");
int error_code;
error_code = email_backup_accounts_into_secure_storage(file_name);
testapp_print("\n email_backup_accounts_into_secure_storage returned [%d]\n", error_code);
}
static gboolean testapp_test_restore_account()
{
- char *file_name = tzplatform_mkpath(TZ_SYS_DATA,"email/accounts_file");
+ char *file_name = (char *)tzplatform_mkpath(TZ_SYS_DATA,"email/accounts_file");
int error_code;
error_code = email_restore_accounts_from_secure_storage(file_name);
testapp_print("\n email_restore_accounts_from_secure_storage returned [%d]\n", error_code);
#define TEST_EML_PATH "/tmp/test.eml"
-
+/*
static void print_depth(int depth)
{
int i;
for (i = 0; i < depth; i++)
testapp_print(" \n");
}
-
+*/
+/*
static void print_mime_struct(GMimeObject *part, int depth)
{
const GMimeContentType *type;
}
}
}
-
+*/
static void
test_eml_parsing_foreach_callback(GMimeObject *parent, GMimeObject *part, gpointer user_data)
{
if ((fd = open(TEST_EML_PATH, O_RDONLY, 0)) == -1) {
testapp_print ("open fail\n");
- return 0;
+ return FALSE;
}
/* init the gmime library */
testapp_print("Header String:%s\n\n\n\n", g_mime_header_list_to_string(po->headers));
g_mime_message_foreach(message, test_eml_parsing_foreach_callback, &count);
+ return TRUE;
}
static gboolean testapp_test_interpret_command(int menu_number)
{
gboolean go_to_loop = TRUE;
int menu_number = 0;
- int result_from_scanf = 0;
-
while (go_to_loop) {
testapp_show_menu(EMAIL_GMIME_MENU);
testapp_show_prompt(EMAIL_GMIME_MENU);
- result_from_scanf = scanf("%d", &menu_number);
+ if(0 >= scanf("%d", &menu_number)){
+ testapp_print ("input fail\n");
+ continue;
+ }
go_to_loop = testapp_test_interpret_command(menu_number);
}