Fix use of uninitialized values reported by valgrind (see man accept); Fix memory leak
According to "man 2 accept" the third argument of accept should be initialized by the caller:
"The addrlen argument is a value-result argument: the caller must initialize it to contain the size (in bytes) of the structure pointed to by addr; on return it will contain the actual size of the peer address"