diff options
Diffstat (limited to 'net/llc')
-rw-r--r-- | net/llc/af_llc.c | 2 | ||||
-rw-r--r-- | net/llc/llc_conn.c | 6 |
2 files changed, 6 insertions, 2 deletions
diff --git a/net/llc/af_llc.c b/net/llc/af_llc.c index 20b4cfebd74c..f49b82da8264 100644 --- a/net/llc/af_llc.c +++ b/net/llc/af_llc.c | |||
@@ -714,7 +714,7 @@ static int llc_ui_recvmsg(struct kiocb *iocb, struct socket *sock, | |||
714 | if (uaddr) | 714 | if (uaddr) |
715 | memcpy(uaddr, llc_ui_skb_cb(skb), sizeof(*uaddr)); | 715 | memcpy(uaddr, llc_ui_skb_cb(skb), sizeof(*uaddr)); |
716 | msg->msg_namelen = sizeof(*uaddr); | 716 | msg->msg_namelen = sizeof(*uaddr); |
717 | if (!skb->list) { | 717 | if (!skb->next) { |
718 | dgram_free: | 718 | dgram_free: |
719 | kfree_skb(skb); | 719 | kfree_skb(skb); |
720 | } | 720 | } |
diff --git a/net/llc/llc_conn.c b/net/llc/llc_conn.c index eba812a9c69c..571548619469 100644 --- a/net/llc/llc_conn.c +++ b/net/llc/llc_conn.c | |||
@@ -71,7 +71,11 @@ int llc_conn_state_process(struct sock *sk, struct sk_buff *skb) | |||
71 | 71 | ||
72 | if (!ev->ind_prim && !ev->cfm_prim) { | 72 | if (!ev->ind_prim && !ev->cfm_prim) { |
73 | /* indicate or confirm not required */ | 73 | /* indicate or confirm not required */ |
74 | if (!skb->list) | 74 | /* XXX this is not very pretty, perhaps we should store |
75 | * XXX indicate/confirm-needed state in the llc_conn_state_ev | ||
76 | * XXX control block of the SKB instead? -DaveM | ||
77 | */ | ||
78 | if (!skb->next) | ||
75 | goto out_kfree_skb; | 79 | goto out_kfree_skb; |
76 | goto out_skb_put; | 80 | goto out_skb_put; |
77 | } | 81 | } |