summaryrefslogtreecommitdiffstats
path: root/net/ipv4/ip_options.c
diff options
context:
space:
mode:
authorJames Morris <james.l.morris@oracle.com>2014-09-30 16:44:04 +0200
committerJames Morris <james.l.morris@oracle.com>2014-09-30 16:44:04 +0200
commit6c8ff877cdf13cd5287ed9d700cfb6cb70e2bfa1 (patch)
tree2ab49b7d19fb69cdae5b6be9e7ba44f6cf3d45ef /net/ipv4/ip_options.c
parentMerge tag 'keys-next-20140922' of git://git.kernel.org/pub/scm/linux/kernel/g... (diff)
parentLinux 3.16 (diff)
downloadlinux-6c8ff877cdf13cd5287ed9d700cfb6cb70e2bfa1.tar.xz
linux-6c8ff877cdf13cd5287ed9d700cfb6cb70e2bfa1.zip
Merge commit 'v3.16' into next
Diffstat (limited to 'net/ipv4/ip_options.c')
-rw-r--r--net/ipv4/ip_options.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/net/ipv4/ip_options.c b/net/ipv4/ip_options.c
index 5e7aecea05cd..ad382499bace 100644
--- a/net/ipv4/ip_options.c
+++ b/net/ipv4/ip_options.c
@@ -288,6 +288,10 @@ int ip_options_compile(struct net *net,
optptr++;
continue;
}
+ if (unlikely(l < 2)) {
+ pp_ptr = optptr;
+ goto error;
+ }
optlen = optptr[1];
if (optlen < 2 || optlen > l) {
pp_ptr = optptr;