The OMTCP library is a set of functions that allow TCP connections to and from other processes and machines.
The library consists of the following files:
Among other things, OMTCP allows you to:
tcp.accept-connection
, tcp.connect
, tcp.create-service
, tcp.destroy-service
, tcp.disconnect
, tcp.port
)
tcp.peer-ip
, tcp.peer-name
)
tcp.get-string
, tcp.put-string,
tcp.writer
, tcp.reader
, tcp.wait-for-input
, tcp.set-buffering
)
The functions in this library use the following opaque data types:
tcp.connection
- allows you to create a connection to a remote machine
tcp.service
- allows you to accept TCP connections from remote client machines
External exceptions TCP15, TCP16 and TCP17 can be thrown by any OMTCP library function.
Note: The functions in this library generate exceptions, unlike the functions in OMTCP legacy, OmniMark versions 4 - 6.0.1.
This is a complete list of the OMTCP library external exceptions that may be thrown back to the calling OmniMark program. These are all catchable using the #external-exception
label.
TCP01 Unable to resolve the given destination address: %s TCP02 Wait operation failed: %s TCP03 Minimum (%d) and maximum (%d) must be >= -1 with max > min TCP04 TCP object already has a derived source TCP05 TCP socket is not connected TCP06 Write operation timed out TCP07 Read operation timed out TCP08 Unable to connect to destination %s TCP09 Failed to create service port %d TCP10 Failed to accept incoming connection: %s TCP11 Error while reading from connection: %s TCP12 Error while writing to connection: %s TCP13 Invalid packet size %d received for packet-based protocol TCP14 Specified port %d is out of range (0 to 65535) TCP15 Internal error, contact customer support! TCP16 Out of memory TCP17 Unable to create thread TCP19 Specified IO protocol is unsupported TCP20 TCP object already has a derived sink TCP21 An error has already occurred on this TCP object TCP22 Only one of port or socket may be specified TCP23 Invalid queue length %d. Range is 1 to 1024 TCP24 Invalid socket descriptor %d, which is less than 0 TCP25 Value is out of range