c
#define IFADDRMSG_SIZE 8
#define NLA_SIZE_1 4
#define NLA_SIZE_4 8

size_t size = NLMSG_ALIGN(IFADDRMSG_SIZE) + NLA_SIZE_1 + NLA_SIZE_4;
if (size < NLMSG_ALIGN(sizeof(struct ifaddrmsg)) ||
    size < nla_total_size(1) || size < nla_total_size(4))
    goto errout;
skb = nlmsg_new(size, GFP_KERNEL);
