summaryrefslogtreecommitdiffstats
path: root/net/batman-adv/icmp_socket.c
diff options
context:
space:
mode:
authorSven Eckelmann <sven@narfation.org>2011-12-10 15:28:35 +0100
committerMarek Lindner <lindner_marek@yahoo.de>2011-12-12 12:11:06 +0100
commitd18eb45332478f319e5cf996e093228a68864cce (patch)
tree56aca42703092ea2198ff5ee68456968dab0f70e /net/batman-adv/icmp_socket.c
parentbatman-adv: bat_socket_read missing checks (diff)
downloadlinux-d18eb45332478f319e5cf996e093228a68864cce.tar.xz
linux-d18eb45332478f319e5cf996e093228a68864cce.zip
batman-adv: Directly check read of icmp packet in copy_from_user
The access_ok read check can be directly done in copy_from_user since a failure of access_ok is handled the same way as an error in __copy_from_user. Signed-off-by: Sven Eckelmann <sven@narfation.org> Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
Diffstat (limited to 'net/batman-adv/icmp_socket.c')
-rw-r--r--net/batman-adv/icmp_socket.c7
1 files changed, 1 insertions, 6 deletions
diff --git a/net/batman-adv/icmp_socket.c b/net/batman-adv/icmp_socket.c
index 88ab26f5f726..3b04fff3ede3 100644
--- a/net/batman-adv/icmp_socket.c
+++ b/net/batman-adv/icmp_socket.c
@@ -187,12 +187,7 @@ static ssize_t bat_socket_write(struct file *file, const char __user *buff,
skb_reserve(skb, sizeof(struct ethhdr));
icmp_packet = (struct icmp_packet_rr *)skb_put(skb, packet_len);
- if (!access_ok(VERIFY_READ, buff, packet_len)) {
- len = -EFAULT;
- goto free_skb;
- }
-
- if (__copy_from_user(icmp_packet, buff, packet_len)) {
+ if (copy_from_user(icmp_packet, buff, packet_len)) {
len = -EFAULT;
goto free_skb;
}