hdr_out = (struct sadb_msg *) skb_put(skb_out, sizeof(struct sadb_msg)); pfkey_hdr_dup(hdr_out, hdr); hdr_out->sadb_msg_errno = (uint8_t) 0; hdr_out->sadb_msg_len = (sizeof(struct sadb_msg) / sizeof(uint64_t)); pfkey_broadcast(skb_out, GFP_KERNEL, BROADCAST_ALL, NULL);
c.event = XFRM_SAP_FLUSHED; c.pid = hdr->sadb_msg_pid; c.seq = hdr->sadb_msg_seq; km_policy_notify(NULL, 0, &c);
static int pfkey_spdflush(struct sock *sk, struct sk_buff *skb, struct sadb_msg *hdr, void **ext_hdrs){	struct sk_buff *skb_out;	struct sadb_msg *hdr_out;	skb_out = alloc_skb(sizeof(struct sadb_msg) + 16, GFP_KERNEL);	if (!skb_out)		return -ENOBUFS;	xfrm_policy_flush();	hdr_out = (struct sadb_msg *) skb_put(skb_out, sizeof(struct sadb_msg));	pfkey_hdr_dup(hdr_out, hdr);	hdr_out->sadb_msg_errno = (uint8_t) 0;	hdr_out->sadb_msg_len = (sizeof(struct sadb_msg) / sizeof(uint64_t));	pfkey_broadcast(skb_out, GFP_KERNEL, BROADCAST_ALL, NULL);	return 0;}