pnp4nagios icon indicating copy to clipboard operation
pnp4nagios copied to clipboard

logging.c:77: bad code for long file names ?

Open dcb314 opened this issue 10 years ago • 0 comments

[logging.c:77]: (error) Dangerous usage of 'buffer' (strncpy doesn't always null-terminate it).

Source code is

    /* delete .old log file */
    strncpy(buffer, log_file, sizeof(buffer) - 1);
    strncat(buffer, ".old", sizeof(buffer) - 1);
    unlink(buffer);

Something like

    /* delete .old log file */
    strncpy(buffer, log_file, sizeof(buffer) - 1 - 4);
    buffer[sizeof(buffer) - 1- 4] = '\0';
    strncat(buffer, ".old", sizeof(buffer) - 1);
    unlink(buffer);

might be better code.

dcb314 avatar Apr 17 '14 16:04 dcb314