diff options
-rw-r--r-- | wiretap/pcapng.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/wiretap/pcapng.c b/wiretap/pcapng.c index 13ebe557ee..55414e6e98 100644 --- a/wiretap/pcapng.c +++ b/wiretap/pcapng.c @@ -1609,7 +1609,7 @@ name_resolution_block_find_name_end(const char *p, guint record_len, int *err, } static gboolean -pcapng_read_name_resolution_block(FILE_T fh, pcapng_block_header_t *bh, pcapng_t *pn, wtapng_block_t *wblock _U_,int *err, gchar **err_info) +pcapng_read_name_resolution_block(FILE_T fh, pcapng_block_header_t *bh, pcapng_t *pn, wtapng_block_t *wblock, int *err, gchar **err_info) { int block_read; int to_read; @@ -1659,6 +1659,11 @@ pcapng_read_name_resolution_block(FILE_T fh, pcapng_block_header_t *bh, pcapng_t pcapng_debug("pcapng_read_name_resolution_block, total %d bytes", bh->block_total_length); + /* Ensure we have a name resolution block */ + if (wblock->block == NULL) { + wblock->block = wtap_optionblock_create(WTAP_OPTION_BLOCK_NG_NRB); + } + /* * Start out with a buffer big enough for an IPv6 address and one * 64-byte name; we'll make the buffer bigger if necessary. |