summaryrefslogtreecommitdiff
path: root/email-core/include
diff options
context:
space:
mode:
authorSunghyun Kwon <sh0701.kwon@samsung.com>2015-07-06 10:47:48 +0900
committerSunghyun Kwon <sh0701.kwon@samsung.com>2015-07-06 10:47:48 +0900
commit23e973d6909d0785f0fe6a4659490ad428675648 (patch)
tree83329ae63faeb758fa049dda2d01c64baa16b778 /email-core/include
parent2f770238b59e75dd37f18a68334848fe4402c80e (diff)
downloademail-service-23e973d6909d0785f0fe6a4659490ad428675648.tar.gz
email-service-23e973d6909d0785f0fe6a4659490ad428675648.tar.bz2
email-service-23e973d6909d0785f0fe6a4659490ad428675648.zip
Change-Id: I1c5df65a0556864a3dff8244fc4985be4f47be1b
Diffstat (limited to 'email-core/include')
-rwxr-xr-xemail-core/include/email-core-auto-download.h59
-rw-r--r--email-core/include/email-core-container.h45
-rw-r--r--email-core/include/email-core-gmime.h84
-rw-r--r--email-core/include/email-core-pgp.h50
4 files changed, 238 insertions, 0 deletions
diff --git a/email-core/include/email-core-auto-download.h b/email-core/include/email-core-auto-download.h
new file mode 100755
index 0000000..d4b863d
--- /dev/null
+++ b/email-core/include/email-core-auto-download.h
@@ -0,0 +1,59 @@
+/*
+* email-service
+*
+* Copyright (c) 2012 - 2013 Samsung Electronics Co., Ltd. All rights reserved.
+*
+* Contact: Minsoo Kim <minnsoo.kim@samsung.com>, 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
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
+
+#ifndef __EMAIL_CORE_AUTO_DOWNLOAD_H__
+#define __EMAIL_CORE_AUTO_DOWNLOAD_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif /* __cplusplus */
+
+typedef struct auto_download_t
+{
+ int activity_id;
+ int status;
+ int account_id;
+ int mail_id;
+ unsigned long server_mail_id;
+ int mailbox_id;
+ char *multi_user_name;
+} email_event_auto_download;
+
+INTERNAL_FUNC int emcore_start_auto_download_loop(int *err_code);
+INTERNAL_FUNC int emcore_auto_download_loop_continue(void);
+INTERNAL_FUNC int emcore_stop_auto_download_loop(int *err_code);
+INTERNAL_FUNC int emcore_insert_auto_download_event(email_event_auto_download *event_data, int *err_code);
+INTERNAL_FUNC int emcore_retrieve_auto_download_event(email_event_auto_download **event_data, int *err_code);
+INTERNAL_FUNC int emcore_is_auto_download_queue_empty(void);
+INTERNAL_FUNC int emcore_is_auto_download_queue_full(void);
+INTERNAL_FUNC int emcore_clear_auto_download_queue(void);
+
+INTERNAL_FUNC int emcore_insert_auto_download_job(char *multi_user_name, int account_id, int mailbox_id, int mail_id, int auto_download_on, char *uid, int *err_code);
+INTERNAL_FUNC int emcore_insert_auto_download_activity(email_event_auto_download *local_activity, int *activity_id, int *err_code);
+INTERNAL_FUNC int emcore_delete_auto_download_activity(char *multi_user_name, int account_id, int mail_id, int activity_id, int *err_code);
+#endif
+
+#ifdef __cplusplus
+}
+#endif /* __cplusplus */
+
+/* EOF */
diff --git a/email-core/include/email-core-container.h b/email-core/include/email-core-container.h
new file mode 100644
index 0000000..663b1f6
--- /dev/null
+++ b/email-core/include/email-core-container.h
@@ -0,0 +1,45 @@
+/*
+* email-service
+*
+* 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
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
+
+/**
+ *
+ * This file contains functionality related to KNOX
+ * to interact with email-service.
+ * @file email-core-container.c
+ * @author
+ * @version 0.1
+ * @brief This file contains functionality to provide KNOX support in email-service.
+ */
+
+#include <glib.h>
+#include "email-internal-types.h"
+
+INTERNAL_FUNC void emcore_create_container();
+INTERNAL_FUNC void emcore_destroy_container();
+INTERNAL_FUNC void emcore_bind_vsm_context();
+INTERNAL_FUNC int emcore_get_container_path(char *multi_user_name, char **container_path);
+INTERNAL_FUNC int emcore_get_user_name(int pid, char **multi_user_name);
+INTERNAL_FUNC int emcore_lookup_zone_by_name(char *user_name);
+INTERNAL_FUNC void emcore_set_declare_link(const char *file_path);
+INTERNAL_FUNC int emcore_get_zone_name_list(GList **output_name_list);
+INTERNAL_FUNC int emcore_get_canonicalize_path(char *db_path, char **output_path);
+INTERNAL_FUNC int emcore_set_join_zone(char *multi_user_name, void **join_zone);
+INTERNAL_FUNC void emcore_unset_join_zone(void *join_zone);
diff --git a/email-core/include/email-core-gmime.h b/email-core/include/email-core-gmime.h
new file mode 100644
index 0000000..bb0a130
--- /dev/null
+++ b/email-core/include/email-core-gmime.h
@@ -0,0 +1,84 @@
+/*
+* email-service
+*
+* 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
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
+
+#ifndef __EMAIL_CORE_GMIME_H__
+#define __EMAIL_CORE_GMIME_H__
+
+#include "email-core-mail.h"
+#include <gmime/gmime.h>
+
+#include "c-client.h"
+#include "lnx_inc.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif /* __cplusplus */
+
+
+typedef struct _search_section {
+ GMimeObject *section_object;
+ char *section;
+} search_section;
+
+INTERNAL_FUNC void emcore_gmime_init(void);
+INTERNAL_FUNC void emcore_gmime_shutdown(void);
+
+INTERNAL_FUNC int emcore_gmime_pop3_parse_mime(char *eml_path, struct _m_content_info *cnt_info, int *err_code);
+INTERNAL_FUNC int emcore_gmime_imap_parse_mime_partial(char *rfc822header_str, char *bodytext_str, struct _m_content_info *cnt_info);
+INTERNAL_FUNC int emcore_gmime_eml_parse_mime(char *eml_path, struct _rfc822header *rfc822_header, struct _m_content_info *cnt_info, int *err_code);
+
+INTERNAL_FUNC void emcore_gmime_imap_parse_foreach_cb(GMimeObject *parent, GMimeObject *part, gpointer user_data);
+INTERNAL_FUNC void emcore_gmime_imap_parse_full_foreach_cb(GMimeObject *parent, GMimeObject *part, gpointer user_data);
+INTERNAL_FUNC void emcore_gmime_imap_parse_bodystructure_foreach_cb(GMimeObject *parent, GMimeObject *part, gpointer user_data);
+
+INTERNAL_FUNC void emcore_gmime_get_body_sections_foreach_cb(GMimeObject *parent, GMimeObject *part, gpointer user_data);
+INTERNAL_FUNC void emcore_gmime_get_attachment_section_foreach_cb(GMimeObject *parent, GMimeObject *part, gpointer user_data);
+INTERNAL_FUNC void emcore_gmime_search_section_foreach_cb(GMimeObject *parent, GMimeObject *part, gpointer user_data);
+
+INTERNAL_FUNC void emcore_gmime_construct_multipart (GMimeMultipart *multipart, BODY *body, const char *spec, int *total_mail_size);
+INTERNAL_FUNC void emcore_gmime_construct_part (GMimePart *part, BODY *body, const char *spec, int *total_mail_size);
+INTERNAL_FUNC int emcore_gmime_construct_mime_part_with_bodystructure(BODY *mbody, GMimeMessage **message, const char *spec, int *total_mail_size);
+
+INTERNAL_FUNC int emcore_gmime_get_body_sections_from_message(GMimeMessage *message, struct _m_content_info *cnt_info, char **sections_to_fetch);
+INTERNAL_FUNC int emcore_gmime_get_attachment_section_from_message(GMimeMessage *message,
+ struct _m_content_info *cnt_info, int nth, char **section_to_fetch);
+
+INTERNAL_FUNC int emcore_gmime_fetch_imap_body_sections(MAILSTREAM *stream, int msg_uid, int mail_id,
+ struct _m_content_info *cnt_info, GMimeMessage *message, int event_handle, int auto_download, int *err_code);
+
+INTERNAL_FUNC int emcore_gmime_fetch_imap_attachment_section(MAILSTREAM *stream,
+ int mail_id, int uid, int nth, struct _m_content_info *cnt_info,
+ GMimeMessage *message, int auto_download, int event_handle, int *err_code);
+
+INTERNAL_FUNC int emcore_gmime_check_filename_duplication(char *source_filename, struct _m_content_info *cnt_info);
+INTERNAL_FUNC char *emcore_gmime_get_modified_filename_in_duplication(char *source_filename);
+INTERNAL_FUNC char *emcore_gmime_get_encoding_to_utf8(const char *text);
+INTERNAL_FUNC char *emcore_gmime_get_decoding_text(const char *text);
+INTERNAL_FUNC void emcore_gmime_get_mime_entity_cb(GMimeObject *parent, GMimeObject *part, gpointer user_data);
+INTERNAL_FUNC char *emcore_gmime_get_mime_entity_signed_message(GMimeObject *multipart);
+INTERNAL_FUNC char *emcore_gmime_get_mime_entity(int fd);
+
+#ifdef __cplusplus
+}
+#endif /* __cplusplus */
+
+#endif
+/* EOF */
diff --git a/email-core/include/email-core-pgp.h b/email-core/include/email-core-pgp.h
new file mode 100644
index 0000000..b7d2288
--- /dev/null
+++ b/email-core/include/email-core-pgp.h
@@ -0,0 +1,50 @@
+/*
+* email-service
+*
+* 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
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
+
+
+/******************************************************************************
+ * File : email-core-smime.h
+ * Desc : Mail Operation Header
+ *
+ * Auth :
+ *
+ * History :
+ * 2006.08.16 : created
+ *****************************************************************************/
+
+#ifndef EM_CORE_GPG_H_
+#define EM_CORE_GPG_H_
+
+#include <cert-service.h>
+
+#include "email-types.h"
+
+INTERNAL_FUNC int emcore_pgp_set_signed_message(char *certificate, char *password, char *mime_entity, char *user_id, email_digest_type digest_type, char **file_path);
+
+INTERNAL_FUNC int emcore_pgp_set_encrypted_message(char *recipient_list, char *certificate, char *password, char *mime_entity, char *user_id, email_digest_type digest_type, char **file_path);
+
+INTERNAL_FUNC int emcore_pgp_set_signed_and_encrypted_message(char *recipient_list, char *certificate, char *password, char *mime_entity, char *user_id, email_digest_type digest_type, char **file_path);
+
+INTERNAL_FUNC int emcore_pgp_get_verify_signature(char *signature_path, char *mime_entity, email_digest_type digest_type, int *verify);
+
+INTERNAL_FUNC int emcore_pgp_get_decrypted_message(char *encrypted_message, char *password, int sign, char **decrypted_file, int *verify);
+
+#endif /* EM_CORE_GPG_H_ */