The warning was:
./tcpdump.c:1059:7: warning: implicit conversion loses integer precision:
'ssize_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
cc = read(fd, cp, (u_int)buf.st_size);
~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
static char *
read_infile(char *fname)
{
- int i, fd, cc;
+ int i, fd;
+ ssize_t cc;
char *cp;
struct stat buf;
if (cc < 0)
error("read %s: %s", fname, pcap_strerror(errno));
if (cc != buf.st_size)
- error("short read %s (%d != %d)", fname, cc, (int)buf.st_size);
+ error("short read %s (%zd != %d)", fname, cc, (int)buf.st_size);
close(fd);
/* replace "# comment" with spaces */