Apply new feature of com-core, use the index instead of string to find the handler
authorSung-jae Park <nicesj.park@samsung.com>
Mon, 1 Sep 2014 14:21:35 +0000 (23:21 +0900)
committerSung-jae Park <nicesj.park@samsung.com>
Mon, 1 Sep 2014 14:22:24 +0000 (23:22 +0900)
[model] Redwood,Kiran,B3(Wearable)
[binary_type] AP
[customer] Docomo/Orange/ATT/Open
[issue#] N/A
[problem]
[cause]
[solution]
[team] HomeTF
[request]
[horizontal_expansion]

Change-Id: I195291354053ef8aa80f265873b56178634574df

include/provider_cmd_list.h [new file with mode: 0644]
src/client.c
src/dynamicbox.c

diff --git a/include/provider_cmd_list.h b/include/provider_cmd_list.h
new file mode 100644 (file)
index 0000000..91e5771
--- /dev/null
@@ -0,0 +1,155 @@
+// provider -> master
+// master -> client
+#define CMD_UPDATED            0x00000001
+#define CMD_LB_UPDATED         0x00000001      // same with UPDATED
+#define CMD_DESC_UPDATED       0x00000101
+#define CMD_PD_UPDATED         0x00000101      // same with DESC_UPDATED
+#define CMD_EXTRA_INFO         0x00000201
+#define CMD_DELETED            0x00000301
+#define CMD_FAULTED            0x00000401
+#define CMD_FAULT_PACKAGE      0x00000401
+#define CMD_SCROLL             0x00000501
+#define CMD_LB_UPDATE_BEGIN    0x00000601
+#define CMD_LB_UPDATE_END      0x00000701
+#define CMD_PD_UPDATE_BEGIN    0x00000801
+#define CMD_PD_UPDATE_END      0x00000901
+#define CMD_ACCESS_STATUS      0x00000A01
+#define CMD_KEY_STATUS         0x00000B01
+#define CMD_CLOSE_PD           0x00000C01
+
+// provider -> master
+// Upper list must be sync'd with client(viewer)'s result event table
+#define CMD_CALL               0x00000D01
+#define CMD_RET                        0x00000E01
+#define CMD_ACQUIRE_BUFFER     0x00000F01
+#define CMD_RESIZE_BUFFER      0x00001001
+#define CMD_RELEASE_BUFFER     0x00001101
+#define CMD_HELLO              0x00001201
+#define CMD_PING               0x00001301
+#define CMD_CTRL               0x00001401
+
+// Following list is only for the viewer
+// master -> client
+#define CMD_PD_CREATED         0x00000D01
+#define CMD_PD_DESTROYED       0x00000E01
+#define CMD_CREATED            0x00000F01
+#define CMD_GROUP_CHANGED      0x00001001
+#define CMD_PERIOD_CHANGED     0x00001101
+#define CMD_SIZE_CHANGED       0x00001201
+#define CMD_RESULT_PINUP       0x00001301      // viewer
+#define CMD_RESULT_UPDATE_MODE 0x00001401      // viewer
+
+// Following list should be started after the common list of client_cmd_list
+// master -> provider
+#define CMD_PD_SHOW            0x00003701
+#define CMD_PD_HIDE            0x00003801
+#define CMD_LB_PAUSE           0x00003901
+#define CMD_LB_RESUME          0x00003A01
+#define CMD_SCRIPT             0x00003B01
+#define CMD_RENEW              0x00003C01
+#define CMD_PINUP              0x00003D01
+#define CMD_UPDATE_CONTENT     0x00003E01
+#define CMD_PAUSE              0x00003F01
+#define CMD_RESUME             0x00004001
+#define CMD_DISCONNECT         0x00004101
+
+// Live Info -> master
+#define CMD_INFO_HELLO         0x00000001
+#define CMD_INFO_SLAVE_LIST    0x00000101
+#define CMD_INFO_PKG_LIST      0x00000201
+#define CMD_INFO_INST_LIST     0x00000301
+#define CMD_INFO_SLAVE_CTRL    0x00000401
+#define CMD_INFO_PKG_CTRL      0x00000501
+#define CMD_INFO_MASTER_CTRL   0x00000601
+
+// client -> master
+// master -> provider
+#define CMD_PD_MOUSE_MOVE              0x00000001
+#define CMD_LB_MOUSE_MOVE              0x00000101
+#define CMD_PD_MOUSE_DOWN              0x00000201
+#define CMD_PD_MOUSE_UP                        0x00000301
+#define CMD_LB_MOUSE_DOWN              0x00000401
+#define CMD_LB_MOUSE_UP                        0x00000501
+#define CMD_PD_MOUSE_ENTER             0x00000601
+#define CMD_PD_MOUSE_LEAVE             0x00000701
+#define CMD_LB_MOUSE_ENTER             0x00000801
+#define CMD_LB_MOUSE_LEAVE             0x00000901
+#define CMD_LB_MOUSE_ON_SCROLL         0x00000A01
+#define CMD_LB_MOUSE_OFF_SCROLL                0x00000B01
+#define CMD_PD_MOUSE_ON_SCROLL         0x00000C01
+#define CMD_PD_MOUSE_OFF_SCROLL                0x00000D01
+#define CMD_LB_MOUSE_ON_HOLD           0x00000E01
+#define CMD_LB_MOUSE_OFF_HOLD          0x00000F01
+#define CMD_PD_MOUSE_ON_HOLD           0x00001001
+#define CMD_PD_MOUSE_OFF_HOLD          0x00001101
+#define CMD_CLICKED                    0x00001201
+#define CMD_TEXT_SIGNAL                        0x00001301
+#define CMD_DELETE                     0x00001401
+#define CMD_RESIZE                     0x00001501
+#define CMD_NEW                                0x00001601
+#define CMD_SET_PERIOD                 0x00001701
+#define CMD_CHANGE_GROUP               0x00001801
+#define CMD_PD_MOVE                    0x00001901
+#define CMD_PD_ACCESS_HL               0x00001A01
+#define CMD_PD_ACCESS_ACTIVATE         0x00001B01
+#define CMD_PD_ACCESS_ACTION           0x00001C01
+#define CMD_PD_ACCESS_SCROLL           0x00001D01
+#define CMD_PD_ACCESS_VALUE_CHANGE     0x00001E01
+#define CMD_PD_ACCESS_MOUSE            0x00001F01
+#define CMD_PD_ACCESS_BACK             0x00002001
+#define CMD_PD_ACCESS_OVER             0x00002101
+#define CMD_PD_ACCESS_READ             0x00002201
+#define CMD_PD_ACCESS_ENABLE           0x00002301
+#define CMD_LB_ACCESS_HL               0x00002401
+#define CMD_LB_ACCESS_ACTIVATE         0x00002501
+#define CMD_LB_ACCESS_ACTION           0x00002601
+#define CMD_LB_ACCESS_SCROLL           0x00002701
+#define CMD_LB_ACCESS_VALUE_CHANGE     0x00002801
+#define CMD_LB_ACCESS_MOUSE            0x00002901
+#define CMD_LB_ACCESS_BACK             0x00002A01
+#define CMD_LB_ACCESS_OVER             0x00002B01
+#define CMD_LB_ACCESS_READ             0x00002C01
+#define CMD_LB_ACCESS_ENABLE           0x00002D01
+#define CMD_LB_KEY_DOWN                        0x00002E01
+#define CMD_LB_KEY_UP                  0x00002F01
+#define CMD_LB_KEY_FOCUS_IN            0x00003001
+#define CMD_LB_KEY_FOCUS_OUT           0x00003101
+#define CMD_PD_KEY_DOWN                        0x00003201
+#define CMD_PD_KEY_UP                  0x00003301
+#define CMD_PD_KEY_FOCUS_IN            0x00003401
+#define CMD_PD_KEY_FOCUS_OUT           0x00003501
+#define CMD_UPDATE_MODE                        0x00003601
+
+// client -> master
+#define CMD_LB_MOUSE_SET               0x00003701
+#define CMD_LB_MOUSE_UNSET             0x00003801
+#define CMD_PD_MOUSE_SET               0x00003901
+#define CMD_PD_MOUSE_UNSET             0x00003A01
+#define CMD_CHANGE_VISIBILITY          0x00003B01
+#define CMD_LB_ACQUIRE_PIXMAP          0x00003C01
+#define CMD_LB_RELEASE_PIXMAP          0x00003D01
+#define CMD_PD_ACQUIRE_PIXMAP          0x00003E01
+#define CMD_PD_RELEASE_PIXMAP          0x00003F01
+#define CMD_ACQUIRE                    0x00004001
+#define CMD_RELEASE                    0x00004101
+#define CMD_PINUP_CHANGED              0x00004201
+#define CMD_CREATE_PD                  0x00004301
+#define CMD_DESTROY_PD                 0x00004401
+#define CMD_ACTIVATE_PACKAGE           0x00004501
+#define CMD_SUBSCRIBE                  0x00004601
+#define CMD_UNSUBSCRIBE                        0x00004701
+#define CMD_DELETE_CLUSTER             0x00004801
+#define CMD_DELETE_CATEGORY            0x00004901
+#define CMD_REFRESH_GROUP              0x00004A01
+#define CMD_UPDATE                     0x00004B01
+#define CMD_LB_KEY_SET                 0x00004C01
+#define CMD_LB_KEY_UNSET               0x00004D01
+#define CMD_PD_KEY_SET                 0x00004E01
+#define CMD_PD_KEY_UNSET               0x00004F01
+#define CMD_CLIENT_PAUSED              0x00005001
+#define CMD_CLIENT_RESUMED             0x00005101
+
+// service -> master
+#define CMD_SERVICE_UPDATE             0x00000001
+#define CMD_SERVICE_CHANGE_PERIOD      0x00000101
+#define CMD_SERVICE_INST_CNT           0x00000201
index ff1ebc6..fabb224 100644 (file)
@@ -45,6 +45,7 @@
 #include "conf.h"
 #include "file_service.h"
 #include "dlist.h"
+#include "provider_cmd_list.h"
 
 int errno;
 
@@ -1561,51 +1562,17 @@ static struct method s_table[] = {
                .handler = master_extra_info,
        },
        {
-               .cmd = "pd_created",
-               .handler = master_gbar_created,
-       },
-       {
-               .cmd = "pd_destroyed",
-               .handler = master_gbar_destroyed,
-       },
-       {
-               .cmd = "fault_package", /* pkgname, id, function, ret */
-               .handler = master_fault_package,
-       },
-       {
                .cmd = "deleted", /* pkgname, id, timestamp, ret */
                .handler = master_deleted,
        },
        {
-               .cmd = "created", /* timestamp, pkgname, id, content, dbox_w, dbox_h, gbar_w, gbar_h, cluster, category, dbox_file, gbar_file, auto_launch, priority, size_list, is_user, pinup_supported, text_dbox, text_gbar, period, ret */
-               .handler = master_created,
-       },
-       {
-               .cmd = "group_changed",
-               .handler = master_group_changed,
-       },
-       {
-               .cmd = "period_changed",
-               .handler = master_period_changed,
-       },
-       {
-               .cmd = "size_changed",
-               .handler = master_size_changed,
-       },
-       {
-               .cmd = "pinup",
-               .handler = master_pinup,
+               .cmd = "fault_package", /* pkgname, id, function, ret */
+               .handler = master_fault_package,
        },
        {
                .cmd = "scroll",
                .handler = master_hold_scroll,
        },
-
-       {
-               .cmd = "update_mode",
-               .handler = master_update_mode,
-       },
-
        {
                .cmd = "lb_update_begin",
                .handler = master_dbox_update_begin,
@@ -1614,7 +1581,6 @@ static struct method s_table[] = {
                .cmd = "lb_update_end",
                .handler = master_dbox_update_end,
        },
-
        {
                .cmd = "pd_update_begin",
                .handler = master_gbar_update_begin,
@@ -1623,7 +1589,6 @@ static struct method s_table[] = {
                .cmd = "pd_update_end",
                .handler = master_gbar_update_end,
        },
-
        {
                .cmd = "access_status",
                .handler = master_access_status,
@@ -1636,8 +1601,40 @@ static struct method s_table[] = {
                .cmd = "close_pd",
                .handler = master_request_close_gbar,
        },
+       {
+               .cmd = "pd_created",
+               .handler = master_gbar_created,
+       },
+       {
+               .cmd = "pd_destroyed",
+               .handler = master_gbar_destroyed,
+       },
+       {
+               .cmd = "created", /* timestamp, pkgname, id, content, dbox_w, dbox_h, gbar_w, gbar_h, cluster, category, dbox_file, gbar_file, auto_launch, priority, size_list, is_user, pinup_supported, text_dbox, text_gbar, period, ret */
+               .handler = master_created,
+       },
+       {
+               .cmd = "group_changed",
+               .handler = master_group_changed,
+       },
+       {
+               .cmd = "period_changed",
+               .handler = master_period_changed,
+       },
+       {
+               .cmd = "size_changed",
+               .handler = master_size_changed,
+       },
+       {
+               .cmd = "pinup",
+               .handler = master_pinup,
+       },
 
        {
+               .cmd = "update_mode",
+               .handler = master_update_mode,
+       },
+       {
                .cmd = NULL,
                .handler = NULL,
        },
@@ -1663,6 +1660,7 @@ static void acquire_cb(struct dynamicbox *handler, const struct packet *result,
 static inline int make_connection(void)
 {
        struct packet *packet;
+       unsigned int cmd = CMD_ACQUIRE;
        int ret;
 
        DbgPrint("Let's making connection!\n");
@@ -1673,7 +1671,7 @@ static inline int make_connection(void)
                return DBOX_STATUS_ERROR_IO_ERROR;
        }
 
-       packet = packet_create("acquire", "d", util_timestamp());
+       packet = packet_create((const char *)&cmd, "d", util_timestamp());
        if (!packet) {
                com_core_packet_client_fini(s_info.fd);
                s_info.fd = -1;
index 74cdf06..315452d 100644 (file)
@@ -42,6 +42,7 @@
 #include "master_rpc.h"
 #include "client.h"
 #include "conf.h"
+#include "provider_cmd_list.h"
 
 #define EAPI __attribute__((visibility("default")))
 
@@ -448,6 +449,7 @@ static int dbox_acquire_dbox_pixmap(struct dynamicbox *handler, dynamicbox_ret_c
        struct packet *packet;
        struct cb_info *cbinfo;
        const char *id;
+       unsigned int cmd = CMD_LB_ACQUIRE_PIXMAP;
        int ret;
 
        id = fb_id(handler->common->dbox.fb);
@@ -455,7 +457,7 @@ static int dbox_acquire_dbox_pixmap(struct dynamicbox *handler, dynamicbox_ret_c
                return DBOX_STATUS_ERROR_INVALID_PARAMETER;
        }
 
-       packet = packet_create("lb_acquire_pixmap", "ss", handler->common->pkgname, handler->common->id);
+       packet = packet_create((const char *)&cmd, "ss", handler->common->pkgname, handler->common->id);
        if (!packet) {
                ErrPrint("Failed to build a param\n");
                return DBOX_STATUS_ERROR_FAULT;
@@ -515,6 +517,7 @@ static int dbox_acquire_gbar_pixmap(struct dynamicbox *handler, dynamicbox_ret_c
 {
        struct packet *packet;
        struct cb_info *cbinfo;
+       unsigned int cmd = CMD_PD_ACQUIRE_PIXMAP;
        const char *id;
        int ret;
 
@@ -523,7 +526,7 @@ static int dbox_acquire_gbar_pixmap(struct dynamicbox *handler, dynamicbox_ret_c
                return DBOX_STATUS_ERROR_INVALID_PARAMETER;
        }
 
-       packet = packet_create("pd_acquire_pixmap", "ss", handler->common->pkgname, handler->common->id);
+       packet = packet_create((const char *)&cmd, "ss", handler->common->pkgname, handler->common->id);
        if (!packet) {
                ErrPrint("Failed to build a param\n");
                return DBOX_STATUS_ERROR_FAULT;
@@ -867,11 +870,12 @@ static int create_real_instance(struct dynamicbox *handler, dynamicbox_ret_cb_t
        struct cb_info *cbinfo;
        struct packet *packet;
        struct dynamicbox_common *common;
+       unsigned int cmd = CMD_NEW;
        int ret;
 
        common = handler->common;
 
-       packet = packet_create("new", "dssssdii",
+       packet = packet_create((const char *)&cmd, "dssssdii",
                                common->timestamp, common->pkgname, common->content,
                                common->cluster, common->category,
                                common->dbox.period, common->dbox.width, common->dbox.height);
@@ -951,6 +955,7 @@ static int dbox_set_visibility(struct dynamicbox *handler, enum dynamicbox_visib
 {
        struct packet *packet;
        int need_to_add_job = 0;
+       unsigned int cmd = CMD_CHANGE_VISIBILITY;
        int ret;
 
        if (handler->common->visible != DBOX_SHOW && state == DBOX_SHOW) {
@@ -973,7 +978,7 @@ static int dbox_set_visibility(struct dynamicbox *handler, enum dynamicbox_visib
                return DBOX_STATUS_ERROR_NONE;
        }
 
-       packet = packet_create_noack("change,visibility", "ssi", handler->common->pkgname, handler->common->id, (int)state);
+       packet = packet_create_noack((const char *)&cmd, "ssi", handler->common->pkgname, handler->common->id, (int)state);
        if (!packet) {
                ErrPrint("Failed to create a packet\n");
                return DBOX_STATUS_ERROR_FAULT;
@@ -1301,6 +1306,7 @@ EAPI double dynamicbox_period(struct dynamicbox *handler)
 EAPI int dynamicbox_set_period(struct dynamicbox *handler, double period, dynamicbox_ret_cb_t cb, void *data)
 {
        struct packet *packet;
+       unsigned int cmd = CMD_SET_PERIOD;
        int ret;
 
        if (!handler || handler->state != CREATE) {
@@ -1333,7 +1339,7 @@ EAPI int dynamicbox_set_period(struct dynamicbox *handler, double period, dynami
                return DBOX_STATUS_ERROR_ALREADY;
        }
 
-       packet = packet_create("set_period", "ssd", handler->common->pkgname, handler->common->id, period);
+       packet = packet_create((const char *)&cmd, "ssd", handler->common->pkgname, handler->common->id, period);
        if (!packet) {
                ErrPrint("Failed to build a packet %s\n", handler->common->pkgname);
                return DBOX_STATUS_ERROR_FAULT;
@@ -1424,6 +1430,7 @@ EAPI void *dynamicbox_unset_event_handler(int (*dbox_cb)(struct dynamicbox *, en
 EAPI int dynamicbox_set_update_mode(struct dynamicbox *handler, int active_update, dynamicbox_ret_cb_t cb, void *data)
 {
        struct packet *packet;
+       unsigned int cmd = CMD_UPDATE_MODE;
        int ret;
 
        if (!handler || handler->state != CREATE) {
@@ -1454,7 +1461,7 @@ EAPI int dynamicbox_set_update_mode(struct dynamicbox *handler, int active_updat
                return DBOX_STATUS_ERROR_PERMISSION_DENIED;
        }
 
-       packet = packet_create("update_mode", "ssi", handler->common->pkgname, handler->common->id, active_update);
+       packet = packet_create((const char *)&cmd, "ssi", handler->common->pkgname, handler->common->id, active_update);
        if (!packet) {
                return DBOX_STATUS_ERROR_FAULT;
        }
@@ -1548,9 +1555,10 @@ EAPI int dynamicbox_resize(struct dynamicbox *handler, int type, dynamicbox_ret_
 
        if (handler->common->refcnt <= 1) {
                struct packet *packet;
+               unsigned int cmd = CMD_RESIZE;
 
                /* Only 1 instance */
-               packet = packet_create("resize", "ssii", handler->common->pkgname, handler->common->id, w, h);
+               packet = packet_create((const char *)&cmd, "ssii", handler->common->pkgname, handler->common->id, w, h);
                if (!packet) {
                        ErrPrint("Failed to build param\n");
                        return DBOX_STATUS_ERROR_FAULT;
@@ -1671,6 +1679,7 @@ EAPI int dynamicbox_click(struct dynamicbox *handler, double x, double y)
 {
        struct packet *packet;
        double timestamp;
+       unsigned int cmd = CMD_CLICKED;
        int ret;
 
        if (!handler || handler->state != CREATE) {
@@ -1700,7 +1709,7 @@ EAPI int dynamicbox_click(struct dynamicbox *handler, double x, double y)
        timestamp = util_timestamp();
        DbgPrint("CLICKED: %lf\n", timestamp);
 
-       packet = packet_create_noack("clicked", "sssddd", handler->common->pkgname, handler->common->id, "clicked", timestamp, x, y);
+       packet = packet_create_noack((const char *)&cmd, "sssddd", handler->common->pkgname, handler->common->id, "clicked", timestamp, x, y);
        if (!packet) {
                ErrPrint("Failed to build param\n");
                return DBOX_STATUS_ERROR_FAULT;
@@ -1710,17 +1719,22 @@ EAPI int dynamicbox_click(struct dynamicbox *handler, double x, double y)
 
        if (!handler->common->dbox.mouse_event && (handler->common->dbox.type == _DBOX_TYPE_BUFFER || handler->common->dbox.type == _DBOX_TYPE_SCRIPT)) {
                int ret; /* Shadow variable */
-               ret = send_mouse_event(handler, "lb_mouse_down", x * handler->common->dbox.width, y * handler->common->dbox.height);
+               unsigned int cmd;
+
+               cmd = CMD_LB_MOUSE_DOWN;
+               ret = send_mouse_event(handler, (const char *)&cmd, x * handler->common->dbox.width, y * handler->common->dbox.height);
                if (ret < 0) {
                        ErrPrint("Failed to send Down: %d\n", ret);
                }
 
-               ret = send_mouse_event(handler, "lb_mouse_move", x * handler->common->dbox.width, y * handler->common->dbox.height);
+               cmd = CMD_LB_MOUSE_MOVE;
+               ret = send_mouse_event(handler, (const char *)&cmd, x * handler->common->dbox.width, y * handler->common->dbox.height);
                if (ret < 0) {
                        ErrPrint("Failed to send Move: %d\n", ret);
                }
 
-               ret = send_mouse_event(handler, "lb_mouse_up", x * handler->common->dbox.width, y * handler->common->dbox.height);
+               cmd = CMD_LB_MOUSE_UP;
+               ret = send_mouse_event(handler, (const char *)&cmd, x * handler->common->dbox.width, y * handler->common->dbox.height);
                if (ret < 0) {
                        ErrPrint("Failed to send Up: %d\n", ret);
                }
@@ -1772,6 +1786,7 @@ EAPI int dynamicbox_glance_bar_is_created(struct dynamicbox *handler)
 EAPI int dynamicbox_create_glance_bar(struct dynamicbox *handler, double x, double y, dynamicbox_ret_cb_t cb, void *data)
 {
        struct packet *packet;
+       unsigned int cmd = CMD_CREATE_PD;
        int ret;
 
        if (!handler || handler->state != CREATE) {
@@ -1813,7 +1828,7 @@ EAPI int dynamicbox_create_glance_bar(struct dynamicbox *handler, double x, doub
                }
        }
 
-       packet = packet_create("create_pd", "ssdd", handler->common->pkgname, handler->common->id, x, y);
+       packet = packet_create((const char *)&cmd, "ssdd", handler->common->pkgname, handler->common->id, x, y);
        if (!packet) {
                ErrPrint("Failed to build param\n");
                return DBOX_STATUS_ERROR_FAULT;
@@ -1837,6 +1852,7 @@ EAPI int dynamicbox_create_glance_bar(struct dynamicbox *handler, double x, doub
 EAPI int dynamicbox_move_glance_bar(struct dynamicbox *handler, double x, double y)
 {
        struct packet *packet;
+       unsigned int cmd = CMD_PD_MOVE;
 
        if (!handler || handler->state != CREATE) {
                ErrPrint("Handler is invalid\n");
@@ -1858,7 +1874,7 @@ EAPI int dynamicbox_move_glance_bar(struct dynamicbox *handler, double x, double
                return DBOX_STATUS_ERROR_INVALID_PARAMETER;
        }
 
-       packet = packet_create_noack("pd_move", "ssdd", handler->common->pkgname, handler->common->id, x, y);
+       packet = packet_create_noack((const char *)&cmd, "ssdd", handler->common->pkgname, handler->common->id, x, y);
        if (!packet) {
                ErrPrint("Failed to build param\n");
                return DBOX_STATUS_ERROR_FAULT;
@@ -1871,13 +1887,14 @@ EAPI int dynamicbox_activate(const char *pkgname, dynamicbox_ret_cb_t cb, void *
 {
        struct packet *packet;
        struct cb_info *cbinfo;
+       unsigned int cmd = CMD_ACTIVATE_PACKAGE;
        int ret;
 
        if (!pkgname) {
                return DBOX_STATUS_ERROR_INVALID_PARAMETER;
        }
 
-       packet = packet_create("activate_package", "s", pkgname);
+       packet = packet_create((const char *)&cmd, "s", pkgname);
        if (!packet) {
                ErrPrint("Failed to build a param\n");
                return DBOX_STATUS_ERROR_FAULT;
@@ -1902,6 +1919,7 @@ EAPI int dynamicbox_destroy_glance_bar(struct dynamicbox *handler, dynamicbox_re
 {
        struct packet *packet;
        struct cb_info *cbinfo;
+       unsigned int cmd = CMD_DESTROY_PD;
        int ret;
 
        if (!handler || handler->state != CREATE) {
@@ -1947,7 +1965,7 @@ EAPI int dynamicbox_destroy_glance_bar(struct dynamicbox *handler, dynamicbox_re
 
        DbgPrint("[%s]\n", handler->common->pkgname);
 
-       packet = packet_create("destroy_pd", "ss", handler->common->pkgname, handler->common->id);
+       packet = packet_create((const char *)&cmd, "ss", handler->common->pkgname, handler->common->id);
        if (!packet) {
                ErrPrint("Failed to build a param\n");
                return DBOX_STATUS_ERROR_FAULT;
@@ -1977,8 +1995,7 @@ EAPI int dynamicbox_feed_access_event(struct dynamicbox *handler, enum dynamicbo
 {
        int w = 1;
        int h = 1;
-       char cmd[32] = { '\0', };
-       char *ptr = cmd;
+       unsigned int cmd;
        int ret = 0;    /* re-used for sending event type */
 
        if (!handler || handler->state != CREATE) {
@@ -2006,65 +2023,102 @@ EAPI int dynamicbox_feed_access_event(struct dynamicbox *handler, enum dynamicbo
                        ErrPrint("GBAR is not created\n");
                        return DBOX_STATUS_ERROR_INVALID_PARAMETER;
                }
-               *ptr++ = 'p';
-               *ptr++ = 'd';
+
                w = handler->common->gbar.width;
                h = handler->common->gbar.height;
+
+               switch (type & ~(DBOX_ACCESS_EVENT_GBAR_MASK | DBOX_ACCESS_EVENT_DBOX_MASK)) {
+               case DBOX_ACCESS_EVENT_HIGHLIGHT:
+                       cmd = CMD_PD_ACCESS_HL;
+                       ret = (int)info->type;
+                       break;
+               case DBOX_ACCESS_EVENT_ACTIVATE:
+                       cmd = CMD_PD_ACCESS_ACTIVATE;
+                       break;
+               case DBOX_ACCESS_EVENT_ACTION:
+                       cmd = CMD_PD_ACCESS_ACTION;
+                       ret = (int)info->type;
+                       break;
+               case DBOX_ACCESS_EVENT_SCROLL:
+                       cmd = CMD_PD_ACCESS_SCROLL;
+                       ret = (int)info->type;
+                       break;
+               case DBOX_ACCESS_EVENT_VALUE_CHANGE:
+                       cmd = CMD_PD_ACCESS_VALUE_CHANGE;
+                       break;
+               case DBOX_ACCESS_EVENT_MOUSE:
+                       cmd = CMD_PD_ACCESS_MOUSE;
+                       ret = (int)info->type;
+                       break;
+               case DBOX_ACCESS_EVENT_BACK:
+                       cmd = CMD_PD_ACCESS_BACK;
+                       break;
+               case DBOX_ACCESS_EVENT_OVER:
+                       cmd = CMD_PD_ACCESS_OVER;
+                       break;
+               case DBOX_ACCESS_EVENT_READ:
+                       cmd = CMD_PD_ACCESS_READ;
+                       break;
+               case DBOX_ACCESS_EVENT_ENABLE:
+                       cmd = CMD_PD_ACCESS_ENABLE;
+                       ret = info->type;
+                       break;
+               default:
+                       return DBOX_STATUS_ERROR_INVALID_PARAMETER;
+               }
+
        } else if (type & DBOX_ACCESS_EVENT_DBOX_MASK) {
-               *ptr++ = 'l';
-               *ptr++ = 'b';
                w = handler->common->dbox.width;
                h = handler->common->dbox.height;
+               switch (type & ~(DBOX_ACCESS_EVENT_GBAR_MASK | DBOX_ACCESS_EVENT_DBOX_MASK)) {
+               case DBOX_ACCESS_EVENT_HIGHLIGHT:
+                       cmd = CMD_LB_ACCESS_HL;
+                       ret = (int)info->type;
+                       break;
+               case DBOX_ACCESS_EVENT_ACTIVATE:
+                       cmd = CMD_LB_ACCESS_ACTIVATE;
+                       break;
+               case DBOX_ACCESS_EVENT_ACTION:
+                       cmd = CMD_LB_ACCESS_ACTION;
+                       ret = (int)info->type;
+                       break;
+               case DBOX_ACCESS_EVENT_SCROLL:
+                       cmd = CMD_LB_ACCESS_SCROLL;
+                       ret = (int)info->type;
+                       break;
+               case DBOX_ACCESS_EVENT_VALUE_CHANGE:
+                       cmd = CMD_LB_ACCESS_VALUE_CHANGE;
+                       break;
+               case DBOX_ACCESS_EVENT_MOUSE:
+                       cmd = CMD_LB_ACCESS_MOUSE;
+                       ret = (int)info->type;
+                       break;
+               case DBOX_ACCESS_EVENT_BACK:
+                       cmd = CMD_LB_ACCESS_BACK;
+                       break;
+               case DBOX_ACCESS_EVENT_OVER:
+                       cmd = CMD_LB_ACCESS_OVER;
+                       break;
+               case DBOX_ACCESS_EVENT_READ:
+                       cmd = CMD_LB_ACCESS_READ;
+                       break;
+               case DBOX_ACCESS_EVENT_ENABLE:
+                       cmd = CMD_LB_ACCESS_ENABLE;
+                       ret = info->type;
+                       break;
+               default:
+                       return DBOX_STATUS_ERROR_INVALID_PARAMETER;
+               }
        } else {
                ErrPrint("Invalid event type\n");
                return DBOX_STATUS_ERROR_INVALID_PARAMETER;
        }
 
-       switch (type & ~(DBOX_ACCESS_EVENT_GBAR_MASK | DBOX_ACCESS_EVENT_DBOX_MASK)) {
-       case DBOX_ACCESS_EVENT_HIGHLIGHT:
-               strcpy(ptr, "_access_hl");
-               ret = (int)info->type;
-               break;
-       case DBOX_ACCESS_EVENT_ACTIVATE:
-               strcpy(ptr, "_access_activate");
-               break;
-       case DBOX_ACCESS_EVENT_ACTION:
-               strcpy(ptr, "_access_action");
-               ret = (int)info->type;
-               break;
-       case DBOX_ACCESS_EVENT_SCROLL:
-               strcpy(ptr, "_access_scroll");
-               ret = (int)info->type;
-               break;
-       case DBOX_ACCESS_EVENT_VALUE_CHANGE:
-               strcpy(ptr, "_access_value_change");
-               break;
-       case DBOX_ACCESS_EVENT_MOUSE:
-               strcpy(ptr, "_access_mouse");
-               ret = (int)info->type;
-               break;
-       case DBOX_ACCESS_EVENT_BACK:
-               strcpy(ptr, "_access_back");
-               break;
-       case DBOX_ACCESS_EVENT_OVER:
-               strcpy(ptr, "_access_over");
-               break;
-       case DBOX_ACCESS_EVENT_READ:
-               strcpy(ptr, "_access_read");
-               break;
-       case DBOX_ACCESS_EVENT_ENABLE:
-               strcpy(ptr, "_access_enable");
-               ret = info->type;
-               break;
-       default:
-               return DBOX_STATUS_ERROR_INVALID_PARAMETER;
-       }
-
        if (!cb) {
                cb = default_access_event_cb;
        }
 
-       ret = send_access_event(handler, cmd, info->x * w, info->y * h, ret);
+       ret = send_access_event(handler, (const char *)&cmd, info->x * w, info->y * h, ret);
        if (ret == (int)DBOX_STATUS_ERROR_NONE) {
                handler->cbs.access_event.cb = cb;
                handler->cbs.access_event.data = data;
@@ -2078,8 +2132,7 @@ EAPI int dynamicbox_feed_mouse_event(struct dynamicbox *handler, enum dynamicbox
 {
        int w = 1;
        int h = 1;
-       char cmd[32] = { '\0', };
-       char *ptr = cmd;
+       unsigned int cmd;
 
        if (!handler || handler->state != CREATE) {
                ErrPrint("Handler is invalid\n");
@@ -2128,8 +2181,46 @@ EAPI int dynamicbox_feed_mouse_event(struct dynamicbox *handler, enum dynamicbox
                        handler->common->gbar.x = info->x;
                        handler->common->gbar.y = info->y;
                }
-               *ptr++ = 'p';
-               *ptr++ = 'd';
+
+               switch ((type & ~(DBOX_MOUSE_EVENT_GBAR_MASK | DBOX_MOUSE_EVENT_DBOX_MASK))) {
+               case DBOX_MOUSE_EVENT_ENTER | DBOX_MOUSE_EVENT_MASK:
+                       cmd = CMD_PD_MOUSE_ENTER;
+                       break;
+               case DBOX_MOUSE_EVENT_LEAVE | DBOX_MOUSE_EVENT_MASK:
+                       cmd = CMD_PD_MOUSE_LEAVE;
+                       break;
+               case DBOX_MOUSE_EVENT_UP | DBOX_MOUSE_EVENT_MASK:
+                       cmd = CMD_PD_MOUSE_UP;
+                       break;
+               case DBOX_MOUSE_EVENT_DOWN | DBOX_MOUSE_EVENT_MASK:
+                       cmd = CMD_PD_MOUSE_DOWN;
+                       break;
+               case DBOX_MOUSE_EVENT_MOVE | DBOX_MOUSE_EVENT_MASK:
+                       cmd = CMD_PD_MOUSE_MOVE;
+                       break;
+               case DBOX_MOUSE_EVENT_SET | DBOX_MOUSE_EVENT_MASK:
+                       cmd = CMD_PD_MOUSE_SET;
+                       break;
+               case DBOX_MOUSE_EVENT_UNSET | DBOX_MOUSE_EVENT_MASK:
+                       cmd = CMD_PD_MOUSE_UNSET;
+                       break;
+               case DBOX_MOUSE_EVENT_ON_SCROLL | DBOX_MOUSE_EVENT_MASK:
+                       cmd = CMD_PD_MOUSE_ON_SCROLL;
+                       break;
+               case DBOX_MOUSE_EVENT_ON_HOLD | DBOX_MOUSE_EVENT_MASK:
+                       cmd = CMD_PD_MOUSE_ON_HOLD;
+                       break;
+               case DBOX_MOUSE_EVENT_OFF_SCROLL | DBOX_MOUSE_EVENT_MASK:
+                       cmd = CMD_PD_MOUSE_OFF_SCROLL;
+                       break;
+               case DBOX_MOUSE_EVENT_OFF_HOLD | DBOX_MOUSE_EVENT_MASK:
+                       cmd = CMD_PD_MOUSE_OFF_HOLD;
+                       break;
+               default:
+                       ErrPrint("Invalid event type\n");
+                       return DBOX_STATUS_ERROR_INVALID_PARAMETER;
+               }
+
        } else if (type & DBOX_MOUSE_EVENT_DBOX_MASK) {
                int flag = 1;
 
@@ -2156,63 +2247,57 @@ EAPI int dynamicbox_feed_mouse_event(struct dynamicbox *handler, enum dynamicbox
                        handler->common->dbox.x = info->x;
                        handler->common->dbox.y = info->y;
                }
-               *ptr++ = 'l';
-               *ptr++ = 'b';
-       } else {
-               ErrPrint("Invalid event type\n");
-               return DBOX_STATUS_ERROR_INVALID_PARAMETER;
-       }
 
-       /*!
-        * Must be shorter than 29 bytes.
-        */
-       switch ((type & ~(DBOX_MOUSE_EVENT_GBAR_MASK | DBOX_MOUSE_EVENT_DBOX_MASK))) {
-       case DBOX_MOUSE_EVENT_ENTER | DBOX_MOUSE_EVENT_MASK:
-               strcpy(ptr, "_mouse_enter");
-               break;
-       case DBOX_MOUSE_EVENT_LEAVE | DBOX_MOUSE_EVENT_MASK:
-               strcpy(ptr, "_mouse_leave");
-               break;
-       case DBOX_MOUSE_EVENT_UP | DBOX_MOUSE_EVENT_MASK:
-               strcpy(ptr, "_mouse_up");
-               break;
-       case DBOX_MOUSE_EVENT_DOWN | DBOX_MOUSE_EVENT_MASK:
-               strcpy(ptr, "_mouse_down");
-               break;
-       case DBOX_MOUSE_EVENT_MOVE | DBOX_MOUSE_EVENT_MASK:
-               strcpy(ptr, "_mouse_move");
-               break;
-       case DBOX_MOUSE_EVENT_SET | DBOX_MOUSE_EVENT_MASK:
-               strcpy(ptr, "_mouse_set");
-               break;
-       case DBOX_MOUSE_EVENT_UNSET | DBOX_MOUSE_EVENT_MASK:
-               strcpy(ptr, "_mouse_unset");
-               break;
-       case DBOX_MOUSE_EVENT_ON_SCROLL | DBOX_MOUSE_EVENT_MASK:
-               strcpy(ptr, "_mouse_on_scroll");
-               break;
-       case DBOX_MOUSE_EVENT_ON_HOLD | DBOX_MOUSE_EVENT_MASK:
-               strcpy(ptr, "_mouse_on_hold");
-               break;
-       case DBOX_MOUSE_EVENT_OFF_SCROLL | DBOX_MOUSE_EVENT_MASK:
-               strcpy(ptr, "_mouse_off_scroll");
-               break;
-       case DBOX_MOUSE_EVENT_OFF_HOLD | DBOX_MOUSE_EVENT_MASK:
-               strcpy(ptr, "_mouse_off_hold");
-               break;
-       default:
+               switch ((type & ~(DBOX_MOUSE_EVENT_GBAR_MASK | DBOX_MOUSE_EVENT_DBOX_MASK))) {
+               case DBOX_MOUSE_EVENT_ENTER | DBOX_MOUSE_EVENT_MASK:
+                       cmd = CMD_LB_MOUSE_ENTER;
+                       break;
+               case DBOX_MOUSE_EVENT_LEAVE | DBOX_MOUSE_EVENT_MASK:
+                       cmd = CMD_LB_MOUSE_LEAVE;
+                       break;
+               case DBOX_MOUSE_EVENT_UP | DBOX_MOUSE_EVENT_MASK:
+                       cmd = CMD_LB_MOUSE_UP;
+                       break;
+               case DBOX_MOUSE_EVENT_DOWN | DBOX_MOUSE_EVENT_MASK:
+                       cmd = CMD_LB_MOUSE_DOWN;
+                       break;
+               case DBOX_MOUSE_EVENT_MOVE | DBOX_MOUSE_EVENT_MASK:
+                       cmd = CMD_LB_MOUSE_MOVE;
+                       break;
+               case DBOX_MOUSE_EVENT_SET | DBOX_MOUSE_EVENT_MASK:
+                       cmd = CMD_LB_MOUSE_SET;
+                       break;
+               case DBOX_MOUSE_EVENT_UNSET | DBOX_MOUSE_EVENT_MASK:
+                       cmd = CMD_LB_MOUSE_UNSET;
+                       break;
+               case DBOX_MOUSE_EVENT_ON_SCROLL | DBOX_MOUSE_EVENT_MASK:
+                       cmd = CMD_LB_MOUSE_ON_SCROLL;
+                       break;
+               case DBOX_MOUSE_EVENT_ON_HOLD | DBOX_MOUSE_EVENT_MASK:
+                       cmd = CMD_LB_MOUSE_ON_HOLD;
+                       break;
+               case DBOX_MOUSE_EVENT_OFF_SCROLL | DBOX_MOUSE_EVENT_MASK:
+                       cmd = CMD_LB_MOUSE_OFF_SCROLL;
+                       break;
+               case DBOX_MOUSE_EVENT_OFF_HOLD | DBOX_MOUSE_EVENT_MASK:
+                       cmd = CMD_MOUSE_OFF_HOLD;
+                       break;
+               default:
+                       ErrPrint("Invalid event type\n");
+                       return DBOX_STATUS_ERROR_INVALID_PARAMETER;
+               }
+       } else {
                ErrPrint("Invalid event type\n");
                return DBOX_STATUS_ERROR_INVALID_PARAMETER;
        }
 
-       return send_mouse_event(handler, cmd, info->x * w, info->y * h);
+       return send_mouse_event(handler, (const char *)&cmd, info->x * w, info->y * h);
 }
 
 EAPI int dynamicbox_feed_key_event(struct dynamicbox *handler, enum dynamicbox_key_event_type type, struct dynamicbox_key_event_info *info, dynamicbox_ret_cb_t cb, void *data)
 {
-       char cmd[32] = { '\0', };
-       char *ptr = cmd;
        int ret;
+       unsigned int cmd;
 
        if (!handler || handler->state != CREATE) {
                ErrPrint("Handler is invalid\n");
@@ -2262,8 +2347,33 @@ EAPI int dynamicbox_feed_key_event(struct dynamicbox *handler, enum dynamicbox_k
                         */
                }
 
-               *ptr++ = 'p';
-               *ptr++ = 'd';
+               /*!
+                * Must be short than 29 bytes.
+                */
+               switch ((type & ~(DBOX_MOUSE_EVENT_GBAR_MASK | DBOX_MOUSE_EVENT_DBOX_MASK))) {
+               case DBOX_KEY_EVENT_FOCUS_IN | DBOX_KEY_EVENT_MASK:
+                       cmd = CMD_PD_KEY_FOCUS_IN;
+                       break;
+               case DBOX_KEY_EVENT_FOCUS_OUT | DBOX_KEY_EVENT_MASK:
+                       cmd = CMD_PD_KEY_FOCUS_OUT;
+                       break;
+               case DBOX_KEY_EVENT_UP | DBOX_KEY_EVENT_MASK:
+                       cmd = CMD_PD_KEY_UP;
+                       break;
+               case DBOX_KEY_EVENT_DOWN | DBOX_KEY_EVENT_MASK:
+                       cmd = CMD_PD_KEY_DOWN;
+                       break;
+               case DBOX_KEY_EVENT_SET | DBOX_KEY_EVENT_MASK:
+                       cmd = CMD_PD_KEY_SET;
+                       break;
+               case DBOX_KEY_EVENT_UNSET | DBOX_KEY_EVENT_MASK:
+                       cmd = CMD_PD_KEY_UNSET;
+                       break;
+               default:
+                       ErrPrint("Invalid event type\n");
+                       return DBOX_STATUS_ERROR_INVALID_PARAMETER;
+               }
+
        } else if (type & DBOX_MOUSE_EVENT_DBOX_MASK) {
                if (!handler->common->dbox.mouse_event) {
                        return DBOX_STATUS_ERROR_INVALID_PARAMETER;
@@ -2285,45 +2395,39 @@ EAPI int dynamicbox_feed_key_event(struct dynamicbox *handler, enum dynamicbox_k
                         */
                }
 
-               *ptr++ = 'l';
-               *ptr++ = 'b';
+               switch ((type & ~(DBOX_MOUSE_EVENT_GBAR_MASK | DBOX_MOUSE_EVENT_DBOX_MASK))) {
+               case DBOX_KEY_EVENT_FOCUS_IN | DBOX_KEY_EVENT_MASK:
+                       cmd = CMD_LB_KEY_FOCUS_IN;
+                       break;
+               case DBOX_KEY_EVENT_FOCUS_OUT | DBOX_KEY_EVENT_MASK:
+                       cmd = CMD_LB_KEY_FOCUS_OUT;
+                       break;
+               case DBOX_KEY_EVENT_UP | DBOX_KEY_EVENT_MASK:
+                       cmd = CMD_LB_KEY_UP;
+                       break;
+               case DBOX_KEY_EVENT_DOWN | DBOX_KEY_EVENT_MASK:
+                       cmd = CMD_LB_KEY_DOWN;
+                       break;
+               case DBOX_KEY_EVENT_SET | DBOX_KEY_EVENT_MASK:
+                       cmd = CMD_LB_KEY_SET;
+                       break;
+               case DBOX_KEY_EVENT_UNSET | DBOX_KEY_EVENT_MASK:
+                       cmd = CMD_LB_KEY_UNSET;
+                       break;
+               default:
+                       ErrPrint("Invalid event type\n");
+                       return DBOX_STATUS_ERROR_INVALID_PARAMETER;
+               }
        } else {
                ErrPrint("Invalid event type\n");
                return DBOX_STATUS_ERROR_INVALID_PARAMETER;
        }
 
-       /*!
-        * Must be short than 29 bytes.
-        */
-       switch ((type & ~(DBOX_MOUSE_EVENT_GBAR_MASK | DBOX_MOUSE_EVENT_DBOX_MASK))) {
-       case DBOX_KEY_EVENT_FOCUS_IN | DBOX_KEY_EVENT_MASK:
-               strcpy(ptr, "_key_focus_in");
-               break;
-       case DBOX_KEY_EVENT_FOCUS_OUT | DBOX_KEY_EVENT_MASK:
-               strcpy(ptr, "_key_focus_out");
-               break;
-       case DBOX_KEY_EVENT_UP | DBOX_KEY_EVENT_MASK:
-               strcpy(ptr, "_key_up");
-               break;
-       case DBOX_KEY_EVENT_DOWN | DBOX_KEY_EVENT_MASK:
-               strcpy(ptr, "_key_down");
-               break;
-       case DBOX_KEY_EVENT_SET | DBOX_KEY_EVENT_MASK:
-               strcpy(ptr, "_key_set");
-               break;
-       case DBOX_KEY_EVENT_UNSET | DBOX_KEY_EVENT_MASK:
-               strcpy(ptr, "_key_unset");
-               break;
-       default:
-               ErrPrint("Invalid event type\n");
-               return DBOX_STATUS_ERROR_INVALID_PARAMETER;
-       }
-
        if (!cb) {
                cb = default_key_event_cb;
        }
 
-       ret = send_key_event(handler, cmd, info->keycode);
+       ret = send_key_event(handler, (const char *)&cmd, info->keycode);
        if (ret == (int)DBOX_STATUS_ERROR_NONE) {
                handler->cbs.key_event.cb = cb;
                handler->cbs.key_event.data = data;
@@ -2437,6 +2541,7 @@ EAPI int dynamicbox_size(struct dynamicbox *handler)
 EAPI int dynamicbox_set_group(struct dynamicbox *handler, const char *cluster, const char *category, dynamicbox_ret_cb_t cb, void *data)
 {
        struct packet *packet;
+       unsigned int cmd = CMD_CHANGE_GROUP;
        int ret;
 
        if (!handler) {
@@ -2474,7 +2579,7 @@ EAPI int dynamicbox_set_group(struct dynamicbox *handler, const char *cluster, c
                return DBOX_STATUS_ERROR_ALREADY;
        }
 
-       packet = packet_create("change_group", "ssss", handler->common->pkgname, handler->common->id, cluster, category);
+       packet = packet_create((const char *)&cmd, "ssss", handler->common->pkgname, handler->common->id, cluster, category);
        if (!packet) {
                ErrPrint("Failed to build a param\n");
                return DBOX_STATUS_ERROR_FAULT;
@@ -2604,9 +2709,10 @@ EAPI int dynamicbox_delete_cluster(const char *cluster, dynamicbox_ret_cb_t cb,
 {
        struct packet *packet;
        struct cb_info *cbinfo;
+       unsigned int cmd = CMD_DELETE_CLUSTER;
        int ret;
 
-       packet = packet_create("delete_cluster", "s", cluster);
+       packet = packet_create((const char *)&cmd, "s", cluster);
        if (!packet) {
                ErrPrint("Failed to build a param\n");
                return DBOX_STATUS_ERROR_FAULT;
@@ -2630,9 +2736,10 @@ EAPI int dynamicbox_delete_category(const char *cluster, const char *category, d
 {
        struct packet *packet;
        struct cb_info *cbinfo;
+       unsigned int cmd = CMD_DELETE_CATEGORY;
        int ret;
 
-       packet = packet_create("delete_category", "ss", cluster, category);
+       packet = packet_create((const char *)&cmd, "ss", cluster, category);
        if (!packet) {
                ErrPrint("Failed to build a param\n");
                return DBOX_STATUS_ERROR_FAULT;
@@ -2803,7 +2910,7 @@ EAPI int dynamicbox_release_resource_id(struct dynamicbox *handler, int gbar, un
        struct packet *packet;
        const char *pkgname;
        const char *id;
-       const char *cmd;
+       unsigned int cmd;
 
        if (resource_id == 0 /* || handler->state != CREATE */) {
                ErrPrint("Pixmap is invalid [%d]\n", resource_id);
@@ -2849,7 +2956,7 @@ EAPI int dynamicbox_release_resource_id(struct dynamicbox *handler, int gbar, un
                        id = handler->common->id;
                }
 
-               cmd = "pd_release_pixmap";
+               cmd = CMD_PD_RELEASE_PIXMAP;
        } else {
                if (!handler) {
                        /*!
@@ -2889,10 +2996,10 @@ EAPI int dynamicbox_release_resource_id(struct dynamicbox *handler, int gbar, un
                        id = handler->common->id;
                }
 
-               cmd = "lb_release_pixmap";
+               cmd = CMD_LB_RELEASE_PIXMAP;
        }
 
-       packet = packet_create_noack(cmd, "ssi", pkgname, id, resource_id);
+       packet = packet_create_noack((const char *)&cmd, "ssi", pkgname, id, resource_id);
        if (!packet) {
                ErrPrint("Failed to build a param\n");
                return DBOX_STATUS_ERROR_FAULT;
@@ -3070,6 +3177,7 @@ EAPI int dynamicbox_is_created_by_user(struct dynamicbox *handler)
 EAPI int dynamicbox_set_pinup(struct dynamicbox *handler, int flag, dynamicbox_ret_cb_t cb, void *data)
 {
        struct packet *packet;
+       unsigned int cmd = CMD_PINUP_CHANGED;
        int ret;
 
        if (!handler || handler->state != CREATE) {
@@ -3097,7 +3205,7 @@ EAPI int dynamicbox_set_pinup(struct dynamicbox *handler, int flag, dynamicbox_r
                return DBOX_STATUS_ERROR_ALREADY;
        }
 
-       packet = packet_create("pinup_changed", "ssi", handler->common->pkgname, handler->common->id, flag);
+       packet = packet_create((const char *)&cmd, "ssi", handler->common->pkgname, handler->common->id, flag);
        if (!packet) {
                ErrPrint("Failed to build a param\n");
                return DBOX_STATUS_ERROR_FAULT;
@@ -3222,6 +3330,7 @@ EAPI int dynamicbox_emit_text_signal(struct dynamicbox *handler, const char *emi
 {
        struct packet *packet;
        struct cb_info *cbinfo;
+       unsigned int cmd = CMD_TEXT_SIGNAL;
        int ret;
 
        if (!handler || handler->state != CREATE) {
@@ -3247,7 +3356,7 @@ EAPI int dynamicbox_emit_text_signal(struct dynamicbox *handler, const char *emi
                source = "";
        }
 
-       packet = packet_create("text_signal", "ssssdddd",
+       packet = packet_create((const char *)&cmd, "ssssdddd",
                                handler->common->pkgname, handler->common->id, emission, source, sx, sy, ex, ey);
        if (!packet) {
                ErrPrint("Failed to build a param\n");
@@ -3271,6 +3380,7 @@ EAPI int dynamicbox_emit_text_signal(struct dynamicbox *handler, const char *emi
 EAPI int dynamicbox_subscribe_group(const char *cluster, const char *category)
 {
        struct packet *packet;
+       unsigned int cmd = CMD_SUBSCRIBE;
 
        /*!
         * \todo
@@ -3278,7 +3388,7 @@ EAPI int dynamicbox_subscribe_group(const char *cluster, const char *category)
         * If the group info is not valid, do not send this request
         */
 
-       packet = packet_create_noack("subscribe", "ss", cluster ? cluster : "", category ? category : "");
+       packet = packet_create_noack((const char *)&cmd, "ss", cluster ? cluster : "", category ? category : "");
        if (!packet) {
                ErrPrint("Failed to create a packet\n");
                return DBOX_STATUS_ERROR_FAULT;
@@ -3290,6 +3400,7 @@ EAPI int dynamicbox_subscribe_group(const char *cluster, const char *category)
 EAPI int dynamicbox_unsubscribe_group(const char *cluster, const char *category)
 {
        struct packet *packet;
+       unsigned int cmd = CMD_UNSUBSCRIBE;
 
        /*!
         * \todo
@@ -3298,7 +3409,7 @@ EAPI int dynamicbox_unsubscribe_group(const char *cluster, const char *category)
         * AND Check the subscribed or not too
         */
 
-       packet = packet_create_noack("unsubscribe", "ss", cluster ? cluster : "", category ? category : "");
+       packet = packet_create_noack((const char *)&cmd, "ss", cluster ? cluster : "", category ? category : "");
        if (!packet) {
                ErrPrint("Failed to create a packet\n");
                return DBOX_STATUS_ERROR_FAULT;
@@ -3310,6 +3421,7 @@ EAPI int dynamicbox_unsubscribe_group(const char *cluster, const char *category)
 EAPI int dynamicbox_refresh(struct dynamicbox *handler, int force)
 {
        struct packet *packet;
+       unsigned int cmd = CMD_UPDATE;
 
        if (!handler || handler->state != CREATE) {
                ErrPrint("Handler is invalid\n");
@@ -3326,7 +3438,7 @@ EAPI int dynamicbox_refresh(struct dynamicbox *handler, int force)
                return DBOX_STATUS_ERROR_INVALID_PARAMETER;
        }
 
-       packet = packet_create_noack("update", "ssi", handler->common->pkgname, handler->common->id, force);
+       packet = packet_create_noack((const char *)&cmd, "ssi", handler->common->pkgname, handler->common->id, force);
        if (!packet) {
                ErrPrint("Failed to create a packet\n");
                return DBOX_STATUS_ERROR_FAULT;
@@ -3338,13 +3450,14 @@ EAPI int dynamicbox_refresh(struct dynamicbox *handler, int force)
 EAPI int dynamicbox_refresh_group(const char *cluster, const char *category, int force)
 {
        struct packet *packet;
+       unsigned int cmd = CMD_REFRESH_GROUP;
 
        if (!cluster || !category) {
                ErrPrint("Invalid argument\n");
                return DBOX_STATUS_ERROR_INVALID_PARAMETER;
        }
 
-       packet = packet_create_noack("refresh_group", "ssi", cluster, category, force);
+       packet = packet_create_noack((const char *)&cmd, "ssi", cluster, category, force);
        if (!packet) {
                ErrPrint("Failed to create a packet\n");
                return DBOX_STATUS_ERROR_FAULT;
@@ -3420,8 +3533,9 @@ EAPI enum dynamicbox_visible_state dynamicbox_visibility(struct dynamicbox *hand
 EAPI int dynamicbox_viewer_set_paused(void)
 {
        struct packet *packet;
+       unsigned int cmd = CMD_CLIENT_PAUSED;
 
-       packet = packet_create_noack("client_paused", "d", util_timestamp());
+       packet = packet_create_noack((const char *)&cmd, "d", util_timestamp());
        if (!packet) {
                ErrPrint("Failed to create a pause packet\n");
                return DBOX_STATUS_ERROR_FAULT;
@@ -3433,8 +3547,9 @@ EAPI int dynamicbox_viewer_set_paused(void)
 EAPI int dynamicbox_viewer_set_resumed(void)
 {
        struct packet *packet;
+       unsigned int cmd = CMD_CLIENT_RESUMED;
 
-       packet = packet_create_noack("client_resumed", "d", util_timestamp());
+       packet = packet_create_noack((const char *)&cmd, "d", util_timestamp());
        if (!packet) {
                ErrPrint("Failed to create a resume packet\n");
                return DBOX_STATUS_ERROR_FAULT;