In the ping_timestamp and ping_address functions, you do not call the free for ping->ping_hostname after ping_run, but in ping_echo, you do.
In the ping_timestamp and ping_address functions, you do not call the free for ping->ping_hostname after ping_run, but in ping_echo, you do.