lkml.org 
[lkml]   [2003]   [Jun]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
Subject[PATCH 2.4] Fix IrIAP skb leak
From
ir241_iriap_skb_leak.diff :
<Patch from Jan Kiszka>
o [CORRECT] Fix obvious skb leak in IrIAP state machines


diff -u -p linux/net/irda/iriap_event.d7.c linux/net/irda/iriap_event.c
--- linux/net/irda/iriap_event.d7.c Mon Dec 2 16:24:29 2002
+++ linux/net/irda/iriap_event.c Mon Dec 2 16:25:50 2002
@@ -251,22 +251,25 @@ static void state_s_call(struct iriap_cb
static void state_s_make_call(struct iriap_cb *self, IRIAP_EVENT event,
struct sk_buff *skb)
{
+ struct sk_buff *tx_skb;
+
ASSERT(self != NULL, return;);

switch (event) {
case IAP_CALL_REQUEST:
- skb = self->skb;
+ tx_skb = self->skb;
self->skb = NULL;

- irlmp_data_request(self->lsap, skb);
+ irlmp_data_request(self->lsap, tx_skb);
iriap_next_call_state(self, S_OUTSTANDING);
break;
default:
IRDA_DEBUG(0, "%s(), Unknown event %d\n", __FUNCTION__, event);
- if (skb)
- dev_kfree_skb(skb);
break;
}
+ /* Cleanup time ! */
+ if (skb)
+ dev_kfree_skb(skb);
}

/*
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
\
 
 \ /
  Last update: 2005-03-22 13:36    [W:0.031 / U:0.100 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site