evas_gl_shader: use snprintf instead of sprintf for better security 76/89276/3
authorsunghyun kim <scholb.kim@samsung.com>
Fri, 23 Sep 2016 02:47:46 +0000 (11:47 +0900)
committerGerrit Code Review <gerrit@review.vlan103.tizen.org>
Fri, 23 Sep 2016 09:22:15 +0000 (02:22 -0700)
Change-Id: Ia8f47939aa979cb4ccf76a98a5f56b04aa13bdbb

src/modules/evas/engines/gl_common/evas_gl_shader.c

index 0d91f44..29ceb2f 100644 (file)
@@ -106,7 +106,7 @@ _evas_gl_common_shader_program_binary_load(Eet_File *ef, unsigned int flags)
 
    if (!ef || !glsym_glProgramBinary) return NULL;
 
-   sprintf(pname, SHADER_PROG_NAME_FMT, flags);
+   snprintf(pname, sizeof(pname), SHADER_PROG_NAME_FMT, flags);
    data = (void *) eet_read_direct(ef, pname, &length);
    if (!data)
      {
@@ -194,7 +194,7 @@ _evas_gl_common_shader_program_binary_save(Evas_GL_Program *p, Eet_File *ef)
         return 0;
      }
 
-   sprintf(pname, SHADER_PROG_NAME_FMT, p->flags);
+   snprintf(pname, sizeof(pname), SHADER_PROG_NAME_FMT, p->flags);
    if (eet_write(ef, pname, data, length, SHADER_BINARY_EET_COMPRESS) < 0)
      {
         free(data);
@@ -340,7 +340,7 @@ save:
         if (!p->bin_saved)
           {
              int len = 0;
-             sprintf(pname, SHADER_PROG_NAME_FMT, p->flags);
+             snprintf(pname, sizeof(pname), SHADER_PROG_NAME_FMT, p->flags);
              eet_read_direct(ef, pname, &len);
              if (len > 0)
                p->bin_saved = 1; // assume bin data is correct
@@ -918,7 +918,7 @@ evas_gl_common_shader_program_get(Evas_Engine_GL_Context *gc,
         if (gc->shared->shaders_cache)
           {
              char pname[32];
-             sprintf(pname, SHADER_PROG_NAME_FMT, flags);
+             snprintf(pname, sizeof(pname), SHADER_PROG_NAME_FMT, flags);
              p = _evas_gl_common_shader_program_binary_load(gc->shared->shaders_cache, flags);
              if (p)
                {