OK, got it!
In the TCP.LIB, I swapped the comments:
This was commented out:
ath = arpcache_new(hisip, &((eth_Header *)hdrbuf)->source, iface);
This was used:
//ath = arpresolve_start_iface(hisip, iface);
Bad result caused:
if (ath <= 0)
{
#ifdef TCP_VERBOSE
printf("tcp_handler 2: tcp_rst %d %s\n", __LINE__, __FILE__);
#endif
tcp_rst(LL, hdrbuf, tp);
goto _th_finish;
}
If any one understands why then please let me know.
Thanks,
Dmitry