When I attempt to send data to a Linux server the transmission fails with error:
XCOMU0505E Received a signal from TCP/IP
How do I resolve this error?
Incorrect settings in the following files:
/etc/hosts.allow file contains value ALL : localhost.
/etc/hosts.deny file contains value ALL : ALL
Note: this is not the only cause of the XCOMU0505E error message but these files are often overlooked as a likely cause.
Whenever a new incoming request comes into a Linux server, first it will check if there is any rule defined in the /etc/hosts.allow file matching to the request. If any match is found, connection will be allowed. If no match is found, it will check the /etc/hosts.deny file to see if there is any matching criteria defined. If any match is found, connection will be denied.
If no match is found in both files, connection will be allowed.
In the customers scenario, XCOM transfers are working fine if loopback transfers are performed with REMOTE_SYSTEM=127.0.0.1 or REMOTE_SYSTEM=localhost.
This is because /etc/hosts.allow has rule ALL : localhost.
XCOM transfers are failing with error XCOMU0505E Received a signal from TCP/IP, when transfers are performed with REMOTE_SYSTEM=<hostname> or REMOTE_SYSTEM=<IP Address>. This is because there is no matching entry defined in the /etc/hosts.allow and /etc/hosts.deny is configured to deny all other connections.
Add the following line to /etc/hosts.allow file to ensure XCOM transfers are allowed to execute on this server:
xcom* : ALL
Optionally, they can also use designated partner names in place of ALL to allow XCOM connections from selected partner systems.