mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH][dccp] Fix memory leak and clean up style - dccp_feat_empty_confirm()
@ 2007-07-26 22:39 Jesper Juhl
  2007-07-26 23:16 ` Ian McDonald
  0 siblings, 1 reply; 2+ messages in thread
From: Jesper Juhl @ 2007-07-26 22:39 UTC (permalink / raw)
  To: Linux Kernel Mailing List
  Cc: Andrea Bittau, Arnaldo Carvalho de Melo, dccp, Jesper Juhl


Greetings,

There's a memory leak in net/dccp/feat.c::dccp_feat_empty_confirm().
If we hit the 'default:' case of the 'switch' statement, then we 
return without freeing 'opt', thus leaking 'struct dccp_opt_pend' 
bytes.
The leak is fixed easily enough by adding a kfree(opt); before the 
return statement.
The patch also changes the layout of the 'switch' to be more in line 
with CodingStyle.

Patch has been compile tested.

Please consider merging.


Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>
---

 net/dccp/feat.c |   14 ++++++++++----
 1 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/net/dccp/feat.c b/net/dccp/feat.c
index cd845df..5ebdd86 100644
--- a/net/dccp/feat.c
+++ b/net/dccp/feat.c
@@ -327,10 +327,16 @@ static void dccp_feat_empty_confirm(struct dccp_minisock *dmsk,
 	}
 
 	switch (type) {
-	case DCCPO_CHANGE_L: opt->dccpop_type = DCCPO_CONFIRM_R; break;
-	case DCCPO_CHANGE_R: opt->dccpop_type = DCCPO_CONFIRM_L; break;
-	default:	     DCCP_WARN("invalid type %d\n", type); return;
-
+	case DCCPO_CHANGE_L:
+		opt->dccpop_type = DCCPO_CONFIRM_R;
+		break;
+	case DCCPO_CHANGE_R:
+		opt->dccpop_type = DCCPO_CONFIRM_L;
+		break;
+	default:
+		DCCP_WARN("invalid type %d\n", type);
+		kfree(opt);
+		return;
 	}
 	opt->dccpop_feat = feature;
 	opt->dccpop_val	 = NULL;





PS. Please keep me on Cc when replying.



^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH][dccp] Fix memory leak and clean up style - dccp_feat_empty_confirm()
  2007-07-26 22:39 [PATCH][dccp] Fix memory leak and clean up style - dccp_feat_empty_confirm() Jesper Juhl
@ 2007-07-26 23:16 ` Ian McDonald
  0 siblings, 0 replies; 2+ messages in thread
From: Ian McDonald @ 2007-07-26 23:16 UTC (permalink / raw)
  To: Jesper Juhl
  Cc: Linux Kernel Mailing List, Andrea Bittau, Arnaldo Carvalho de Melo, dccp

On 7/27/07, Jesper Juhl <jesper.juhl@gmail.com> wrote:
>
> Greetings,
>
> There's a memory leak in net/dccp/feat.c::dccp_feat_empty_confirm().
> If we hit the 'default:' case of the 'switch' statement, then we
> return without freeing 'opt', thus leaking 'struct dccp_opt_pend'
> bytes.
> The leak is fixed easily enough by adding a kfree(opt); before the
> return statement.
> The patch also changes the layout of the 'switch' to be more in line
> with CodingStyle.
>
> Patch has been compile tested.
>
> Please consider merging.
>
>
> Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>

Signed-off-by: Ian McDonald <ian.mcdonald@jandi.co.nz>
-- 
Web1: http://wand.net.nz/~iam4/
Web2: http://www.jandi.co.nz
Blog: http://iansblog.jandi.co.nz

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2007-07-26 23:16 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-07-26 22:39 [PATCH][dccp] Fix memory leak and clean up style - dccp_feat_empty_confirm() Jesper Juhl
2007-07-26 23:16 ` Ian McDonald

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®