diff options
Diffstat (limited to 'src/ipc/media-thumb-ipc.c')
-rwxr-xr-x | src/ipc/media-thumb-ipc.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/ipc/media-thumb-ipc.c b/src/ipc/media-thumb-ipc.c index 4fb6cd8..9f652a2 100755 --- a/src/ipc/media-thumb-ipc.c +++ b/src/ipc/media-thumb-ipc.c @@ -270,7 +270,19 @@ int _media_thumb_recv_msg(int sock, int header_size, thumbMsg *msg) } memcpy(msg, buf, header_size); - //thumb_dbg("thumb_size : %d", msg->thumb_size); + + if (strlen(msg->org_path) == 0 || strlen(msg->org_path) >= MAX_FILEPATH_LEN) { + thumb_err("org_path size is invalid %d", strlen(msg->org_path)); + + return MS_MEDIA_ERR_SOCKET_RECEIVE; + } + + /* it can be empty string */ + if (strlen(msg->dst_path) >= MAX_FILEPATH_LEN) { + thumb_err("dst_path size is invalid %d", strlen(msg->dst_path)); + + return MS_MEDIA_ERR_SOCKET_RECEIVE; + } SAFE_FREE(buf); if (msg->thumb_size < 0) { |