projects
/
firefly-linux-kernel-4.4.55.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[IP6TUNNEL]: Add (ip6_tnl_)net argument to some calls.
[firefly-linux-kernel-4.4.55.git]
/
net
/
x25
/
x25_dev.c
diff --git
a/net/x25/x25_dev.c
b/net/x25/x25_dev.c
index c7221de98a9529cff4d11ac141ccc00eb7da9bcc..3ff206c0ae945759e1e38fd4b287fb966a0354e1 100644
(file)
--- a/
net/x25/x25_dev.c
+++ b/
net/x25/x25_dev.c
@@
-48,7
+48,7
@@
static int x25_receive_data(struct sk_buff *skb, struct x25_neigh *nb)
if ((sk = x25_find_socket(lci, nb)) != NULL) {
int queued = 1;
if ((sk = x25_find_socket(lci, nb)) != NULL) {
int queued = 1;
- skb
->h.raw = skb->data
;
+ skb
_reset_transport_header(skb)
;
bh_lock_sock(sk);
if (!sock_owned_by_user(sk)) {
queued = x25_process_rx_frame(sk, skb);
bh_lock_sock(sk);
if (!sock_owned_by_user(sk)) {
queued = x25_process_rx_frame(sk, skb);
@@
-95,6
+95,9
@@
int x25_lapb_receive_frame(struct sk_buff *skb, struct net_device *dev,
struct sk_buff *nskb;
struct x25_neigh *nb;
struct sk_buff *nskb;
struct x25_neigh *nb;
+ if (dev_net(dev) != &init_net)
+ goto drop;
+
nskb = skb_copy(skb, GFP_ATOMIC);
if (!nskb)
goto drop;
nskb = skb_copy(skb, GFP_ATOMIC);
if (!nskb)
goto drop;
@@
-191,7
+194,7
@@
void x25_send_frame(struct sk_buff *skb, struct x25_neigh *nb)
{
unsigned char *dptr;
{
unsigned char *dptr;
- skb
->nh.raw = skb->data
;
+ skb
_reset_network_header(skb)
;
switch (nb->dev->type) {
case ARPHRD_X25:
switch (nb->dev->type) {
case ARPHRD_X25: