Problem: string buffers aren't NULL checked

Have found some places where memory is allocated and not NULL checked.
I have not touched the auto generated engine for zgossip which is also not checking for NULL pointers from strdup.

Tests pass locally.
how can i check if its NULL?
```c
if (!*data_p)
or
if (!data_p)
```
?