diff options
author | Marek Lindner <mareklindner@neomailbox.ch> | 2014-04-24 03:44:25 +0800 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2014-05-31 13:20:38 -0700 |
commit | b6bc7a13cab3966f03d3efd79892c8d2f085b919 (patch) | |
tree | 22f481f774cfcdf1d6dc7362a243a3b0ad082a0d /net/batman-adv/originator.c | |
parent | d83924d7681e7048d639debb614bdd1d9183d201 (diff) | |
download | lwn-b6bc7a13cab3966f03d3efd79892c8d2f085b919.tar.gz lwn-b6bc7a13cab3966f03d3efd79892c8d2f085b919.zip |
batman-adv: fix indirect hard_iface NULL dereference
[ Upstream commit 16a4142363b11952d3aa76ac78004502c0c2fe6e ]
If hard_iface is NULL and goto out is made batadv_hardif_free_ref()
doesn't check for NULL before dereferencing it to get to refcount.
Introduced in cb1c92ec37fb70543d133a1fa7d9b54d6f8a1ecd
("batman-adv: add debugfs support to view multiif tables").
Reported-by: Sven Eckelmann <sven@narfation.org>
Signed-off-by: Marek Lindner <mareklindner@neomailbox.ch>
Acked-by: Antonio Quartulli <antonio@meshcoding.com>
Signed-off-by: Antonio Quartulli <antonio@meshcoding.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'net/batman-adv/originator.c')
-rw-r--r-- | net/batman-adv/originator.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/net/batman-adv/originator.c b/net/batman-adv/originator.c index 3e6dd914892a..abf612d7d0ae 100644 --- a/net/batman-adv/originator.c +++ b/net/batman-adv/originator.c @@ -1074,7 +1074,8 @@ int batadv_orig_hardif_seq_print_text(struct seq_file *seq, void *offset) bat_priv->bat_algo_ops->bat_orig_print(bat_priv, seq, hard_iface); out: - batadv_hardif_free_ref(hard_iface); + if (hard_iface) + batadv_hardif_free_ref(hard_iface); return 0; } |