Skip to content
  • Dr. David Alan Gilbert's avatar
    checkpatch: Disallow glib asserts in main code · 6e938956
    Dr. David Alan Gilbert authored
    
    
    Glib commit a6a875068779 (from 2013) made many of the glib assert
    macros non-fatal if a flag is set.
    This causes two problems:
      a) Compilers moan that your code is unsafe even though you've
         put an assert in before the point of use.
      b) Someone evil could, in a library, call
         g_test_set_nonfatal_assertions() and cause our assertions in
         important places not to fail and potentially allow memory overruns.
    
    Ban most of the glib assertion functions (basically everything except
    g_assert and g_assert_not_reached) except in tests/
    
    This makes checkpatch gives an error such as:
    
      ERROR: Use g_assert or g_assert_not_reached
      #77: FILE: vl.c:4725:
      +    g_assert_cmpstr("Chocolate", >, "Cheese");
    
    Signed-off-by: default avatarDr. David Alan Gilbert <dgilbert@redhat.com>
    Message-Id: <20170427165526.19836-1-dgilbert@redhat.com>
    Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
    6e938956