]> Pileus Git - ~andy/linux/blobdiff - net/key/af_key.c
Merge branch 'for-linus' of git://git.infradead.org/~dedekind/ubi-2.6
[~andy/linux] / net / key / af_key.c
index b3ac85e808acf288dc91a1c12d7a9c92323cdf1d..8b5f486ac80f298fe6034a2a8b576c3c2ad9ea83 100644 (file)
@@ -2291,6 +2291,7 @@ static int pfkey_spdadd(struct sock *sk, struct sk_buff *skb, struct sadb_msg *h
        return 0;
 
 out:
+       xp->dead = 1;
        xfrm_policy_destroy(xp);
        return err;
 }
@@ -3806,17 +3807,16 @@ static int pfkey_init_proc(void)
 {
        struct proc_dir_entry *e;
 
-       e = create_proc_entry("pfkey", 0, init_net.proc_net);
+       e = proc_net_fops_create(&init_net, "pfkey", 0, &pfkey_proc_ops);
        if (e == NULL)
                return -ENOMEM;
 
-       e->proc_fops = &pfkey_proc_ops;
        return 0;
 }
 
 static void pfkey_exit_proc(void)
 {
-       remove_proc_entry("net/pfkey", NULL);
+       proc_net_remove(&init_net, "pfkey");
 }
 #else
 static inline int pfkey_init_proc(void)