Hola.
En la función listen_eth0 se hace setDatosFlujoTCP(d, ipOrigen, puertoOrigen, ipserver, puertoserver)
La pregunta es:
1 - ¿De donde surge puertoserver? ¿Quien lo carga? ¿Como se obtiene?
2 - ¿Ese puetoserver no debería ser puertoDestino?
Saludos