In current code, we create line buffer with size 256, which can contains
255 ASCII characters. But in modern system, terminal can have larger
width. It may cause buffer overflow in snprintf() text.
limits.h provides constant LINE_MAX.
{LINE_MAX}
Unless otherwise noted, the maximum length, in bytes, of a
utility's input line (either standard input or another
file), when the utility is described as processing text
files. The length includes room for the trailing <newline>.
Minimum Acceptable Value: {_POSIX2_LINE_MAX}
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
#include <time.h>
#include <sys/time.h>
#include <sys/socket.h>
+#include <limits.h>
#include "lib/bluetooth.h"
#include "lib/uuid.h"
const char *text, const char *extra)
{
int col = num_columns();
- char line[256], ts_str[96], pid_str[140];
+ char line[LINE_MAX], ts_str[96], pid_str[140];
int n, ts_len = 0, ts_pos = 0, len = 0, pos = 0;
static size_t last_frame;