<HTML><BODY>
Hello.<br><br>In file kernel_netlink_ipsec.c you use the construct:<br><br>hdr->nlmsg_len += rthdr->rta_len;<br><br>It works ok, when key data is aligned to 4 (this is the normal case). But if some payload data (for example, a key) is not multiple of 4 - there will be a mismatch between nlmsg_len and the actual size of the xfrm message. Because XFRM_RTA_NEXT performs alignment, but RTA_LENGTH does not. <br><br>We made workaround for our needs by changing to:<br><br>hdr->nlmsg_len += RTA_ALIGN(rthdr->rta_len);<br><br>If this patch is ok and it does not break anything else - please, apply it to your code.<br><br>Best regards, Vladimir<br><br></BODY></HTML>