coregl_fastpath_gl: Fix string over flow at _COREGL_FASTPATH_SUPPORTED_EXTENSION 72/92072/1 accepted/tizen/3.0/ivi/20161028.134039 accepted/tizen/3.0/mobile/20161028.133149 accepted/tizen/3.0/tv/20161028.133501 accepted/tizen/3.0/wearable/20161028.133756 accepted/tizen/common/20161018.175359 accepted/tizen/ivi/20161019.044319 accepted/tizen/mobile/20161019.044227 accepted/tizen/tv/20161019.044243 accepted/tizen/wearable/20161019.044257 submit/tizen/20161018.110254 submit/tizen_3.0/20161028.062323 submit/tizen_3.0/20161028.082423 submit/tizen_3.0_common/20161104.104000
authorxing.huang <xing.huang@samsung.com>
Thu, 13 Oct 2016 06:17:26 +0000 (14:17 +0800)
committerMun, Gwan-gyeong <kk.moon@samsung.com>
Thu, 13 Oct 2016 06:29:50 +0000 (15:29 +0900)
    - add size check before strcpy

Change-Id: Ib8528863340a3a003fc9f799d22ec796d76c886d

src/modules/fastpath/coregl_fastpath_gl.c

index 13e7fcf..57c7d5e 100644 (file)
@@ -323,7 +323,8 @@ _valid_extension_string()
 
 #define _COREGL_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST)
 #define _COREGL_FASTPATH_SUPPORTED_EXTENSION(NAME, MINVER, MAXVER) \
-                                               if (!strcmp(fstr, NAME) && (MINVER < 0 || GLver >= MINVER) && (MAXVER < 0 || GLver <= MAXVER)) \
+                                               if (!strcmp(fstr, NAME) && (MINVER < 0 || GLver >= MINVER) && (MAXVER < 0 || GLver <= MAXVER) \
+                                                       && (sizeof(string_each_extensions[gl_extension_count]) >= strlen(fstr))) \
                                                { \
                                                        strcpy(string_each_extensions[gl_extension_count], fstr); \
                                                        strcat(string_extensions, fstr); \