Use Valgrind to detect memory not initialised

Mark packet data as undefined before using them again.
This make valgrind possibly detect more uninitialised usages.

Signed-off-by: Frediano Ziglio <freddy77@gmail.com>
Avoid a copy sending update to receive window

Put data directly in the packet instead of prepare in a temporary buffer
and then copy.

Signed-off-by: Frediano Ziglio <freddy77@gmail.com>
Avoid copy memory receiving packets using MARS

Make packet contains the full packet with MARS header too.
Reduce number of read from network as previously an additional read
was required to get TDS packet header.

Signed-off-by: Frediano Ziglio <freddy77@gmail.com>