• Arnd Bergmann's avatar
    isdn: divert: fix sprintf buffer overflow warning · 45e0b4b3
    Arnd Bergmann authored
    One string we pass into the cs->info buffer might be too long,
    as pointed out by gcc:
    
    drivers/isdn/divert/isdn_divert.c: In function 'll_callback':
    drivers/isdn/divert/isdn_divert.c:488:22: error: '%d' directive writing between 1 and 3 bytes into a region of size between 1 and 69 [-Werror=format-overflow=]
     sprintf(cs->info, "%d 0x%lx %s %s %s %s 0x%x 0x%x %d %d %s\n",
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    drivers/isdn/divert/isdn_divert.c:488:22: note: directive argument in the range [0, 255]
    drivers/isdn/divert/isdn_divert.c:488:4: note: 'sprintf' output 25 or more bytes (assuming 129) into a destination of size 90
    
    This is unlikely to actually cause problems, so let's use snprintf
    as a simple workaround to shut  up the warning and truncate the
    buffer instead.
    Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    45e0b4b3
isdn_divert.c 22.9 KB