xfrm: Flushing empty SAD generates false events
[deliverable/linux.git] / net / key / af_key.c
index b3faede9a4f6484a4526c38c0530137048437451..c269ce6094d6462be54f656c7bb76d90f8be3f2e 100644 (file)
@@ -1768,8 +1768,11 @@ static int pfkey_flush(struct sock *sk, struct sk_buff *skb, struct sadb_msg *hd
        audit_info.secid = 0;
        err = xfrm_state_flush(net, proto, &audit_info);
        err2 = unicast_flush_resp(sk, hdr);
-       if (err || err2)
+       if (err || err2) {
+               if (err == -ESRCH) /* empty table - go quietly */
+                       err = 0;
                return err ? err : err2;
+       }
 
        c.data.proto = proto;
        c.seq = hdr->sadb_msg_seq;
This page took 0.040981 seconds and 5 git commands to generate.