c
skb = nlmsg_new(NLMSG_ALIGN(sizeof(struct ifaddrmsg)) + ...);
skb->len = min(skb->len, skb->size);
if (skb->len > skb->size) {
    // handle out-of-bounds write
    return;
}
