View Single Post
Old 04 December 2018, 09:39   #2011
thomas
Registered User
thomas's Avatar
 
Join Date: Jan 2002
Location: Germany
Posts: 5,855
An ARexx "port" is not a port in the sense of TCP/IP. It is rather an AmigaOS MsgPort which can only be accessed through exec.library. You would have to write a proxy program which opens a listener in TCP/IP and forwards any incoming request to the ARexx port.

As ARexx requests are text-based, this is well possible. With the help of tcp-handler, which should be included with every Amiga TCP/IP stack, it can even be done in ARexx. There is an ARexxWebServer on Aminet, you can use it as an example.

Handling results might be a bit more difficult. Not so much for standard requests. They retrung a numeric return code (RC) and possibly an alphanumeric secondary result (RESULT).

But programs offering ARexx ports can also supply additional results in form of Rexx variables. This method is specific to each Arexx port and would have to be mapped for each port seperately in the proxy program.

Scaling under load might be a problem. AFAIK tcp-handler can only handle one request at a time. The listener is busy while the request is being processed and needs to be closed/reopened for the next request.
thomas is offline  
 
Page generated in 0.03974 seconds with 11 queries