From 49b642ab1ce85909e92010601a7bcdadfcfb1a48 Mon Sep 17 00:00:00 2001 From: Jakub Zawadzki Date: Mon, 15 Jul 2013 18:59:42 +0000 Subject: Fix bug #8934: Fuzz failure: seg-fault in tvb_new_proxy() It is possible to have NULL reassembly data, support this case in tvb_new_proxy(). svn path=/trunk/; revision=50634 --- epan/tvbuff_subset.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'epan/tvbuff_subset.c') diff --git a/epan/tvbuff_subset.c b/epan/tvbuff_subset.c index f65b612842..b5034b3f12 100644 --- a/epan/tvbuff_subset.c +++ b/epan/tvbuff_subset.c @@ -226,7 +226,12 @@ tvb_new_subset_remaining(tvbuff_t *backing, const gint backing_offset) tvbuff_t * tvb_new_proxy(tvbuff_t *backing) { - tvbuff_t *tvb = tvb_new_with_subset(backing, backing->reported_length, 0, backing->length); + tvbuff_t *tvb; + + if (backing) + tvb = tvb_new_with_subset(backing, backing->reported_length, 0, backing->length); + else + tvb = tvb_new_real_data(NULL, 0, 0); tvb->ds_tvb = tvb; -- cgit v1.2.1