The OMTCP library is a set of functions that allow TCP connections to and from other processes and machines.
Among other things, OMTCP allows you to:
tcp.accept-connection, tcp.connect, tcp.create-service,
tcp.destroy-service, tcp.disconnect, and tcp.port),
tcp.peer-ip, tcp.peer-name), and
tcp.get-string,
tcp.put-string, tcp.writer, tcp.reader,
tcp.wait-for-input, and 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, and
tcp.service—allows you to accept TCP connections from remote client machines.
To use OMTCP, you must import it into your program using an import declaration such as:
import "omtcp.xmd" prefixed by omtcp.
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