Skip to content
Snippets Groups Projects
glob_c.res.oracle 10.46 KiB
[kernel] Parsing glob_c.c (with preprocessing)
[eva] Analyzing a complete application starting at main
[eva] Computing initial state
[eva] Initial state computed
[eva:initial-state] Values of globals at initialization
  v ∈ [--..--]
[eva] computing for function glob <- main.
  Called from glob_c.c:30.
[eva] computing for function Frama_C_interval <- glob <- main.
  Called from FRAMAC_SHARE/libc/glob.c:32.
[eva] using specification for function Frama_C_interval
[eva] FRAMAC_SHARE/libc/glob.c:32: 
  function Frama_C_interval: precondition 'order' got status valid.
[eva] Done for function Frama_C_interval
[eva] FRAMAC_SHARE/libc/glob.c:66: Call to builtin realloc
[eva] FRAMAC_SHARE/libc/glob.c:66: 
  function realloc: precondition 'freeable' got status valid.
[eva] FRAMAC_SHARE/libc/glob.c:66: allocating variable __realloc_glob_l66
[eva] FRAMAC_SHARE/libc/glob.c:71: starting to merge loop iterations
[eva] FRAMAC_SHARE/libc/glob.c:73: starting to merge loop iterations
[eva:alarm] FRAMAC_SHARE/libc/glob.c:74: Warning: 
  out of bounds write.
  assert
  \valid(pglob->gl_pathv + (size_t)((size_t)(reserve_offs + prev_len) + i_1));
[eva:alarm] FRAMAC_SHARE/libc/glob.c:76: Warning: 
  out of bounds write.
  assert
  \valid(pglob->gl_pathv +
         (size_t)((size_t)(prev_len + reserve_offs) + pglob->gl_pathc));
[eva] computing for function Frama_C_nondet <- glob <- main.
  Called from FRAMAC_SHARE/libc/glob.c:77.
[eva] using specification for function Frama_C_nondet
[eva] Done for function Frama_C_nondet
[eva] computing for function Frama_C_nondet <- glob <- main.
  Called from FRAMAC_SHARE/libc/glob.c:78.
[eva] Done for function Frama_C_nondet
[eva] computing for function Frama_C_interval <- glob <- main.
  Called from FRAMAC_SHARE/libc/glob.c:83.
[eva] FRAMAC_SHARE/libc/glob.c:83: 
  function Frama_C_interval: precondition 'order' got status valid.
[eva] Done for function Frama_C_interval
[eva] computing for function globerr0 <- glob <- main.
  Called from FRAMAC_SHARE/libc/glob.c:83.
[eva] Recording results for globerr0
[eva] Done for function globerr0
[eva] Recording results for glob
[eva] Done for function glob
[eva] computing for function globfree <- main.
  Called from glob_c.c:31.
[eva:alarm] FRAMAC_SHARE/libc/glob.c:94: Warning: 
  accessing uninitialized left-value. assert \initialized(&pglob->gl_pathv);
[eva] FRAMAC_SHARE/libc/glob.c:94: Call to builtin free
[eva] FRAMAC_SHARE/libc/glob.c:94: 
  function free: precondition 'freeable' got status valid.
[eva] Recording results for globfree
[eva] Done for function globfree
[eva] computing for function glob <- main.
  Called from glob_c.c:33.
[eva] computing for function Frama_C_interval <- glob <- main.
  Called from FRAMAC_SHARE/libc/glob.c:32.
[eva] Done for function Frama_C_interval
[eva] FRAMAC_SHARE/libc/glob.c:66: Call to builtin realloc
[eva] FRAMAC_SHARE/libc/glob.c:66: allocating variable __realloc_glob_l66_0
[eva] computing for function Frama_C_nondet <- glob <- main.
  Called from FRAMAC_SHARE/libc/glob.c:77.
[eva] Done for function Frama_C_nondet
[eva] computing for function Frama_C_nondet <- glob <- main.
  Called from FRAMAC_SHARE/libc/glob.c:78.
[eva] Done for function Frama_C_nondet
[eva] computing for function Frama_C_interval <- glob <- main.
  Called from FRAMAC_SHARE/libc/glob.c:83.
[eva] Done for function Frama_C_interval
[eva] FRAMAC_SHARE/libc/glob.c:83: Reusing old results for call to globerr0
[eva] Recording results for glob
[eva] Done for function glob
[eva] computing for function globfree <- main.
  Called from glob_c.c:34.
[eva:alarm] FRAMAC_SHARE/libc/glob.c:94: Warning: 
  accessing left-value that contains escaping addresses.
  assert ¬\dangling(&pglob->gl_pathv);
[eva] FRAMAC_SHARE/libc/glob.c:94: Call to builtin free
[eva] Recording results for globfree
[eva] Done for function globfree
[eva] computing for function glob <- main.
  Called from glob_c.c:36.
[eva] computing for function Frama_C_interval <- glob <- main.
  Called from FRAMAC_SHARE/libc/glob.c:32.
[eva] Done for function Frama_C_interval
[eva] FRAMAC_SHARE/libc/glob.c:50: Call to builtin realloc
[eva] FRAMAC_SHARE/libc/glob.c:50: 
  function realloc: precondition 'freeable' got status valid.
[eva] FRAMAC_SHARE/libc/glob.c:50: allocating variable __realloc_glob_l50
[eva] FRAMAC_SHARE/libc/glob.c:66: Call to builtin realloc
[eva] FRAMAC_SHARE/libc/glob.c:66: allocating variable __realloc_glob_l66_1
[eva] computing for function Frama_C_nondet <- glob <- main.
  Called from FRAMAC_SHARE/libc/glob.c:77.
[eva] Done for function Frama_C_nondet
[eva] computing for function Frama_C_nondet <- glob <- main.
  Called from FRAMAC_SHARE/libc/glob.c:78.
[eva] Done for function Frama_C_nondet
[eva] computing for function Frama_C_interval <- glob <- main.
  Called from FRAMAC_SHARE/libc/glob.c:83.
[eva] Done for function Frama_C_interval
[eva] computing for function globerr1 <- glob <- main.
  Called from FRAMAC_SHARE/libc/glob.c:83.
[eva] Recording results for globerr1
[eva] Done for function globerr1
[eva] Recording results for glob
[eva] Done for function glob
[eva] computing for function globfree <- main.
  Called from glob_c.c:37.
[eva] FRAMAC_SHARE/libc/glob.c:94: Call to builtin free
[eva] Recording results for globfree
[eva] Done for function globfree
[eva] computing for function glob <- main.
  Called from glob_c.c:40.
[eva] computing for function Frama_C_interval <- glob <- main.
  Called from FRAMAC_SHARE/libc/glob.c:32.
[eva] Done for function Frama_C_interval
[eva] FRAMAC_SHARE/libc/glob.c:50: Call to builtin realloc
[eva] FRAMAC_SHARE/libc/glob.c:50: allocating variable __realloc_glob_l50_0
[eva] FRAMAC_SHARE/libc/glob.c:54: starting to merge loop iterations
[eva] FRAMAC_SHARE/libc/glob.c:66: Call to builtin realloc
[eva] FRAMAC_SHARE/libc/glob.c:66: allocating variable __realloc_glob_l66_2
[eva] computing for function Frama_C_nondet <- glob <- main.
  Called from FRAMAC_SHARE/libc/glob.c:77.
[eva] Done for function Frama_C_nondet
[eva] computing for function Frama_C_nondet <- glob <- main.
  Called from FRAMAC_SHARE/libc/glob.c:78.
[eva] Done for function Frama_C_nondet
[eva] computing for function Frama_C_interval <- glob <- main.
  Called from FRAMAC_SHARE/libc/glob.c:83.
[eva] Done for function Frama_C_interval
[eva] FRAMAC_SHARE/libc/glob.c:83: Reusing old results for call to globerr1
[eva] Recording results for glob
[eva] Done for function glob
[eva] computing for function globfree <- main.
  Called from glob_c.c:41.
[eva] FRAMAC_SHARE/libc/glob.c:94: Call to builtin free
[eva] Recording results for globfree
[eva] Done for function globfree
[eva] Recording results for main
[eva] Done for function main
[eva] ====== VALUES COMPUTED ======
[eva:final-states] Values at end of function globerr0:
  __retres ∈ {0}
[eva:final-states] Values at end of function globerr1:
  __retres ∈ {1}
[eva:final-states] Values at end of function globfree:
  gl.gl_pathc ∈ [1..10]
    .gl_pathv ∈
    {{ NULL ; &__realloc_glob_l66[0] ; &__realloc_glob_l66_0[0] ;
       &__realloc_glob_l50[0] ; &__realloc_glob_l66_1[0] ;
       &__realloc_glob_l50_0[0] ; &__realloc_glob_l66_2[0] }} or ESCAPINGADDR
    .gl_offs ∈ {1}
    .gl_flags ∈ {1; 8; 16; 24; 257; 264; 272; 280} or UNINITIALIZED
    {.gl_closedir; .gl_readdir; .gl_opendir; .gl_lstat; .gl_stat} ∈
    UNINITIALIZED
[eva:final-states] Values at end of function glob:
  Frama_C_entropy_source ∈ [--..--]
  reserve_offs ∈ {0; 1}
  prev_len ∈ {0}
  path ∈ {0}
  gl.gl_pathc ∈ [0..10]
    .gl_pathv ∈
    {{ NULL ; &__realloc_glob_l66[0] ; &__realloc_glob_l66_0[0] ;
       &__realloc_glob_l50[0] ; &__realloc_glob_l66_1[0] ;
       &__realloc_glob_l50_0[0] ; &__realloc_glob_l66_2[0] }} or UNINITIALIZED or ESCAPINGADDR
    .gl_offs ∈ {1}
    .gl_flags ∈ {1; 8; 16; 24; 257; 264; 272; 280} or UNINITIALIZED
    {.gl_closedir; .gl_readdir; .gl_opendir; .gl_lstat; .gl_stat} ∈
    UNINITIALIZED
  __retres ∈ {0; 1; 2; 3}
  __realloc_glob_l66[0] ∈ {0} or UNINITIALIZED
                    [1] ∈ {{ "glob result" }} or UNINITIALIZED
                    [2..10] ∈ {{ NULL ; "glob result" }} or UNINITIALIZED
                    [11] ∈ {0} or UNINITIALIZED
  __realloc_glob_l66_0[0] ∈ {{ "glob result" }} or UNINITIALIZED
                      [1..9] ∈ {{ NULL ; "glob result" }} or UNINITIALIZED
                      [10] ∈ {0} or UNINITIALIZED
  __realloc_glob_l50[0] ∈ {{ "bli" }} or UNINITIALIZED
                    [1] ∈ {0} or UNINITIALIZED
  __realloc_glob_l66_1[0] ∈ {{ "glob result" }} or UNINITIALIZED
                      [1..9] ∈ {{ NULL ; "glob result" }} or UNINITIALIZED
                      [10] ∈ {0} or UNINITIALIZED
  __realloc_glob_l50_0[0] ∈ {0} or UNINITIALIZED
                      [1] ∈ {{ "blo" }} or UNINITIALIZED
                      [2] ∈ {0} or UNINITIALIZED
  __realloc_glob_l66_2[0] ∈ {0} or UNINITIALIZED
                      [1] ∈ {{ "glob result" }} or UNINITIALIZED
                      [2..10] ∈ {{ NULL ; "glob result" }} or UNINITIALIZED
                      [11] ∈ {0} or UNINITIALIZED
[eva:final-states] Values at end of function main:
  Frama_C_entropy_source ∈ [--..--]
  ret ∈ {0; 1; 2}
  flags ∈ {24}
  gl.gl_pathc ∈ [0..10]
    .gl_pathv ∈
    {{ NULL ; &__realloc_glob_l50_0[0] ; &__realloc_glob_l66_2[0] }} or ESCAPINGADDR
    .gl_offs ∈ {1}
    .gl_flags ∈ {1; 8; 16; 24; 257; 264; 272; 280} or UNINITIALIZED
    {.gl_closedir; .gl_readdir; .gl_opendir; .gl_lstat; .gl_stat} ∈
    UNINITIALIZED
  __retres ∈ {0}
  __realloc_glob_l66[0] ∈ {0} or UNINITIALIZED
                    [1] ∈ {{ "glob result" }} or UNINITIALIZED
                    [2..10] ∈ {{ NULL ; "glob result" }} or UNINITIALIZED
                    [11] ∈ {0} or UNINITIALIZED
  __realloc_glob_l66_0[0] ∈ {{ "glob result" }} or UNINITIALIZED
                      [1..9] ∈ {{ NULL ; "glob result" }} or UNINITIALIZED
                      [10] ∈ {0} or UNINITIALIZED
  __realloc_glob_l50[0] ∈ {{ "bli" }} or UNINITIALIZED
                    [1] ∈ {0} or UNINITIALIZED
  __realloc_glob_l66_1[0] ∈ {{ "glob result" }} or UNINITIALIZED
                      [1..9] ∈ {{ NULL ; "glob result" }} or UNINITIALIZED
                      [10] ∈ {0} or UNINITIALIZED
  __realloc_glob_l50_0[0] ∈ {0} or UNINITIALIZED
                      [1] ∈ {{ "blo" }} or UNINITIALIZED
                      [2] ∈ {0} or UNINITIALIZED
  __realloc_glob_l66_2[0] ∈ {0} or UNINITIALIZED
                      [1] ∈ {{ "glob result" }} or UNINITIALIZED
                      [2..10] ∈ {{ NULL ; "glob result" }} or UNINITIALIZED
                      [11] ∈ {0} or UNINITIALIZED