git.openpandora.org
/
pandora-kernel.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
tcp: do not forget FIN in tcp_shifted_skb()
[pandora-kernel.git]
/
net
/
ipv4
/
cipso_ipv4.c
diff --git
a/net/ipv4/cipso_ipv4.c
b/net/ipv4/cipso_ipv4.c
index
86f3b88
..
afaa735
100644
(file)
--- a/
net/ipv4/cipso_ipv4.c
+++ b/
net/ipv4/cipso_ipv4.c
@@
-1725,8
+1725,10
@@
int cipso_v4_validate(const struct sk_buff *skb, unsigned char **option)
case CIPSO_V4_TAG_LOCAL:
/* This is a non-standard tag that we only allow for
* local connections, so if the incoming interface is
case CIPSO_V4_TAG_LOCAL:
/* This is a non-standard tag that we only allow for
* local connections, so if the incoming interface is
- * not the loopback device drop the packet. */
- if (!(skb->dev->flags & IFF_LOOPBACK)) {
+ * not the loopback device drop the packet. Further,
+ * there is no legitimate reason for setting this from
+ * userspace so reject it if skb is NULL. */
+ if (skb == NULL || !(skb->dev->flags & IFF_LOOPBACK)) {
err_offset = opt_iter;
goto validate_return_locked;
}
err_offset = opt_iter;
goto validate_return_locked;
}