From 772b9398f4fc25fcfdf75a52e113387c31da0937 Mon Sep 17 00:00:00 2001 From: Kitae Kim Date: Thu, 23 Jan 2014 19:39:38 +0900 Subject: [PATCH] mloop_event: fix insecure data handling When casting keyboard opaque with uint64, its value might be corrupted on 32bit OS. Change-Id: I84207576c5b0b784ff8e28f2aaea1346d9dea4bb Signed-off-by: Kitae Kim --- tizen/src/mloop_event.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/tizen/src/mloop_event.c b/tizen/src/mloop_event.c index b51436c..f164718 100644 --- a/tizen/src/mloop_event.c +++ b/tizen/src/mloop_event.c @@ -104,19 +104,19 @@ static int mloop_evsock_create(struct mloop_evsock *ev) } ev->sockno = socket(AF_INET, SOCK_DGRAM, 0); - if ( ev->sockno == -1 ) { + if (ev->sockno == -1) { ERR("socket() failed\n"); return -1; } #ifdef _WIN32 - ioctlsocket(ev->sockno, FIONBIO, &nonblock ); + ioctlsocket(ev->sockno, FIONBIO, &nonblock); #else ioctl(ev->sockno, FIONBIO, &nonblock); #endif // _WIN32 - nonblock = 1 ; - setsockopt( ev->sockno, SOL_SOCKET, SO_REUSEADDR, (char *)&nonblock, sizeof(nonblock) ) ; + nonblock = 1; + setsockopt(ev->sockno, SOL_SOCKET, SO_REUSEADDR, (char *)&nonblock, sizeof(nonblock)); memset(&sa, '\0', sizeof(sa)); ((struct sockaddr_in *) &sa)->sin_family = AF_INET; @@ -491,7 +491,7 @@ static void mloop_evcb_recv(struct mloop_evsock *ev) mloop_evhandle_touch(&pack); break; case MLOOP_EVTYPE_KEYBOARD: - mloop_evhandle_keyboard(*(uint64_t*)&pack.data[0]); + mloop_evhandle_keyboard(*(long*)&pack.data[0]); break; #ifdef TARGET_I386 case MLOOP_EVTYPE_KBD_ADD: -- 2.7.4