From 0477587d016652468dc23cdcc73756ed6f823e37 Mon Sep 17 00:00:00 2001 From: Jongkyu Koo Date: Thu, 15 Dec 2016 15:51:53 +0900 Subject: [PATCH] change the path of socket & inotify file Change-Id: I5ead53271bd34552d42e8352dcaf4cd1ec5a7856 Signed-off-by: Jongkyu Koo --- common/ctsvc_inotify.c | 24 +++--------------------- common/ctsvc_notify.h | 2 +- common/ctsvc_struct.h | 2 +- packaging/contacts-service.spec | 2 +- server/ctsvc_server.c | 8 ++++---- 5 files changed, 10 insertions(+), 28 deletions(-) diff --git a/common/ctsvc_inotify.c b/common/ctsvc_inotify.c index 9aa31d0..2cd1c67 100644 --- a/common/ctsvc_inotify.c +++ b/common/ctsvc_inotify.c @@ -20,7 +20,6 @@ #include #include #include -#include #include #include "contacts.h" @@ -579,30 +578,14 @@ void ctsvc_inotify_close(void) } } -static const char* __ctsvc_inotify_get_username(uid_t uid) -{ - struct passwd pwd; - struct passwd* pwd_result; - char tmp[CTSVC_STR_SHORT_LEN]; - - int ret = getpwuid_r(uid, &pwd, tmp, sizeof(tmp), &pwd_result); - if (ret != 0 || pwd_result == NULL) { - ERR("getpwuid_r() fail"); - return ""; - } - - return pwd.pw_name; -} - char* ctsvc_inotify_makepath(const char *file) { RETV_IF(NULL == file, NULL); - static int user_name_max = 32; + static int user_id_max = 10; int path_len = 0; char *path = NULL; uid_t uid = getuid(); - const char* user_name = NULL; #ifdef _CONTACTS_IPC_CLIENT if (ctsvc_client_is_in_system_session()) { @@ -611,15 +594,14 @@ char* ctsvc_inotify_makepath(const char *file) } #endif - path_len = strlen(CTSVC_NOTI_PATH) + user_name_max + strlen(file) + 1; + path_len = strlen(CTSVC_NOTI_PATH) + user_id_max + strlen(file) + 1; path = calloc(1, path_len); if (NULL == path) { ERR("calloc() fail"); return NULL; } - user_name = __ctsvc_inotify_get_username(uid); - snprintf(path, path_len, CTSVC_NOTI_PATH"/%s", user_name, file); + snprintf(path, path_len, CTSVC_NOTI_PATH"/%s", uid, file); DBG("%s", path); return path; } diff --git a/common/ctsvc_notify.h b/common/ctsvc_notify.h index ac83573..a14b9ba 100644 --- a/common/ctsvc_notify.h +++ b/common/ctsvc_notify.h @@ -31,7 +31,7 @@ #define CTS_LOGO_IMAGE_LOCATION tzplatform_mkpath(TZ_USER_DATA, "contacts-svc/img/logo") #define CTSVC_CONTACT_IMG_FULL_LOCATION tzplatform_mkpath(TZ_USER_DATA, "contacts-svc/img/contact") -#define CTSVC_NOTI_PATH "/opt/usr/home/%s/data/contacts-svc" +#define CTSVC_NOTI_PATH "/run/user_ext/%d/contacts-svc" #define CTSVC_NOTI_IPC_READY ".CONTACTS_SVC_IPC_READY" #define CTSVC_NOTI_ADDRESSBOOK_CHANGED ".CONTACTS_SVC_AB_CHANGED" #define CTSVC_NOTI_GROUP_CHANGED ".CONTACTS_SVC_GROUP_CHANGED" diff --git a/common/ctsvc_struct.h b/common/ctsvc_struct.h index 4fd07ad..7d71198 100644 --- a/common/ctsvc_struct.h +++ b/common/ctsvc_struct.h @@ -28,7 +28,7 @@ #include "contacts_views.h" -#define CTSVC_SOCK_PATH "/run/user/%d" +#define CTSVC_SOCK_PATH "/run/user_ext/%d" #define CTSVC_IMG_FULL_PATH_SIZE_MAX 1024 /* current max length file path is 256 */ #define CTSVC_PATH_MAX_LEN 1024 #define CTSVC_STR_SHORT_LEN 1024 diff --git a/packaging/contacts-service.spec b/packaging/contacts-service.spec index e10a2f6..c714c21 100644 --- a/packaging/contacts-service.spec +++ b/packaging/contacts-service.spec @@ -1,6 +1,6 @@ Name: contacts-service Summary: Contacts Service -Version: 0.13.63 +Version: 0.13.64 Release: 0 Group: Social & Content/Service License: Apache-2.0 diff --git a/server/ctsvc_server.c b/server/ctsvc_server.c index 1fe2d14..6cbdec3 100644 --- a/server/ctsvc_server.c +++ b/server/ctsvc_server.c @@ -309,12 +309,12 @@ void __ctsvc_create_noti_file_set_permission(const char *file, mode_t mode) fd = creat(path, mode); if (0 <= fd) { close(fd); - chmod(path, 0644); + chmod(path, CTS_SECURITY_DEFAULT_PERMISSION); } free(path); } -/* + void __ctsvc_create_noti_rep_set_permission(mode_t mode) { char path[CTSVC_PATH_MAX_LEN] = {0}; @@ -323,7 +323,7 @@ void __ctsvc_create_noti_rep_set_permission(mode_t mode) if (-1 == access(path, F_OK)) mkdir(path, mode); } -*/ + int main(int argc, char *argv[]) { @@ -352,7 +352,7 @@ int main(int argc, char *argv[]) __ctsvc_create_rep_set_permission(CTS_LOGO_IMAGE_LOCATION, 0750); __ctsvc_create_rep_set_permission(CTSVC_CONTACT_IMG_FULL_LOCATION, 0750); - //__ctsvc_create_noti_rep_set_permission(0744); + __ctsvc_create_noti_rep_set_permission(0755); __ctsvc_create_noti_file_set_permission(CTSVC_NOTI_IPC_READY, CTS_SECURITY_DEFAULT_PERMISSION); __ctsvc_create_noti_file_set_permission(CTSVC_NOTI_ADDRESSBOOK_CHANGED, CTS_SECURITY_DEFAULT_PERMISSION); __ctsvc_create_noti_file_set_permission(CTSVC_NOTI_GROUP_CHANGED, CTS_SECURITY_DEFAULT_PERMISSION); -- 2.7.4