{
struct ifreq ifr;
- strncpy(ifr.ifr_name, ifname, IFNAMSIZ);
+ strncpy(ifr.ifr_name, ifname, IFNAMSIZ - 1);
if (iwinfo_ioctl(SIOCGIFFLAGS, &ifr))
return 0;
{
struct ifreq ifr;
- strncpy(ifr.ifr_name, ifname, IFNAMSIZ);
+ strncpy(ifr.ifr_name, ifname, IFNAMSIZ - 1);
if (iwinfo_ioctl(SIOCGIFFLAGS, &ifr))
return 0;
{
struct ifreq ifr;
- strncpy(ifr.ifr_name, ifname, IFNAMSIZ);
+ strncpy(ifr.ifr_name, ifname, IFNAMSIZ - 1);
if (iwinfo_ioctl(SIOCGIFHWADDR, &ifr))
return 0;
FILE *mtd;
uint16_t *bc;
- int fd, len, off;
+ int fd, off;
+ unsigned int len;
char buf[128];
if (!(mtd = fopen("/proc/mtd", "r")))
return -1;
- while (fgets(buf, sizeof(buf), mtd) > 0)
+ while (fgets(buf, sizeof(buf), mtd) != NULL)
{
if (fscanf(mtd, "mtd%d: %x %*x %127s", &off, &len, buf) < 3 ||
(strcmp(buf, "\"boardconfig\"") && strcmp(buf, "\"EEPROM\"") &&
id->subsystem_vendor_id = 0x1814;
/* device */
- if (bc[off] & 0xf0 == 0x30)
+ if ((bc[off] & 0xf0) == 0x30)
id->device_id = (bc[off] >> 8) | (bc[off] & 0x00ff) << 8;
else
id->device_id = bc[off];