rexx-things/samples/oorexx/sfclient.rex
2025-03-12 20:50:48 +00:00

45 lines
1.1 KiB
Rexx
Executable File

#!/usr/bin/env rexx
socket = socksocket('AF_INET', 'SOCK_STREAM', 'IPPROTO_TCP')
host.!family = 'AF_INET'
host.!addr = '127.0.0.1'
host.!port = '50010'
/* connect to the server */
if sockconnect(socket, 'host.!') < 0 then do
say 'SockConnect failed:' errno
exit
end
say 'type "X" to exit'
do forever
call charout , 'Send To Server: '
parse pull message
if message~upper() = 'X' then leave
/* send message to server */
if socksend(socket, message) < 0 then do
say 'SockSend failed:' errno
leave
end
/* get message from server */
ret = sockrecv(socket, 'data', 1024)
if ret < 1 then do
if ret < 0 then
say 'SockRecv failed:' errno
else
say 'Socket closed:' errno
leave
end
say 'Server responded:' data
end
/* close the socket connection */
if sockclose(socket) < 0 then
say 'SockClose failed:' errno
Exit
/* Rexx */
::requires 'rxsock' LIBRARY