Skip to content
Snippets Groups Projects
  • Nikita Zheleztsov's avatar
    73b01ea5
    icu: fix NULL dereference in `enumEitherTrie` · 73b01ea5
    Nikita Zheleztsov authored
    According to the business logic and assertions `idx` and `data32`
    variables cannot be equal to NULL at the same time. However, we
    cannot rely on assertions.
    
    Let's check that explicitly. If this situation occurs somehow
    the function exits as we cannot recover from this situation: we
    don't have sources, from which values for enumeration can be taken.
    Moreover, continuing of the code execution is such situation may
    lead to accessing NULL if `c<limit`.
    
    Closes tarantool/security#59
    
    NO_CHANGELOG=<security fix>
    NO_DOC=<security fix>
    NO_TEST=<third-party security fix>
    73b01ea5
    History
    icu: fix NULL dereference in `enumEitherTrie`
    Nikita Zheleztsov authored
    According to the business logic and assertions `idx` and `data32`
    variables cannot be equal to NULL at the same time. However, we
    cannot rely on assertions.
    
    Let's check that explicitly. If this situation occurs somehow
    the function exits as we cannot recover from this situation: we
    don't have sources, from which values for enumeration can be taken.
    Moreover, continuing of the code execution is such situation may
    lead to accessing NULL if `c<limit`.
    
    Closes tarantool/security#59
    
    NO_CHANGELOG=<security fix>
    NO_DOC=<security fix>
    NO_TEST=<third-party security fix>