• Kees Cook's avatar
    overflow.h: Add allocation size calculation helpers · 610b15c5
    Kees Cook authored
    In preparation for replacing unchecked overflows for memory allocations,
    this creates helpers for the 3 most common calculations:
    
    array_size(a, b): 2-dimensional array
    array3_size(a, b, c): 3-dimensional array
    struct_size(ptr, member, n): struct followed by n-many trailing members
    
    Each of these return SIZE_MAX on overflow instead of wrapping around.
    
    (Additionally renames a variable named "array_size" to avoid future
    collision.)
    Co-developed-by: default avatarMatthew Wilcox <mawilcox@microsoft.com>
    Signed-off-by: default avatarKees Cook <keescook@chromium.org>
    610b15c5
dm-table.c 49.6 KB