• David S. Miller's avatar
    ipv4: Avoid use of signed integers in fib_trie code. · 3b004569
    David S. Miller authored
    GCC emits all kinds of crazy zero extensions when we go from signed
    int, to unsigned short, etc. etc.
    
    This transformation has to be legal because:
    
    1) In tkey_extract_bits() in mask_pfx(), the values are used to
       perform shifts, on which negative values are undefined by C.
    
    2) In fib_table_lookup() we perform comparisons with unsigned
       values, constants, and additions.  None of which should
       encounter negative values.
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    3b004569
fib_trie.c 60.3 KB