case IOV_DECODE_STR:
if (len > c->data_size)
len = c->data_size;
- c->data_size -= len;
+ if (c->data_size != (unsigned long) -1L)
+ c->data_size -= len;
printstr(tcp, iov[0], len);
break;
case IOV_DECODE_NETLINK:
if (len > c->data_size)
len = c->data_size;
- c->data_size -= len;
+ if (c->data_size != (unsigned long) -1L)
+ c->data_size -= len;
decode_netlink(tcp, iov[0], iov[1]);
break;
default: