tcpcsy

Introduction

A C32 plug-in that provides serial port emulation over a TCP socket. The socket can be configured to either actively connect to its TCP peer, or to passively listen for a connection from the peer.

Configuration

Configuration of the ports is done via the Central Repository file 102836da.txt. This is expected to contain the following key space:

 Bits    Supported Values    Meaning
 31-24   0                   Port record. Port fields assigned as follows:
 23-16   0                   Socket mode (type int, 0 - active, 1 - passive)
         1                   Protocol family (type int)
         2                   Protocol (type int)
         3                   IP address (type string in valid form to be handled by TInetAddr::Input)
         4                   Port (type int, the port to connect to in active mode or the port to
                             listen on in passive mode)
 15-0    0-65535             C32 unit value

For example:

 # Port 0
 0x00000000     int     0               # Active socket.
 0x00010000     int     0x0800          # KAfInet.
 0x00020000     int     6               # KProtocolInetTcp.
 0x00030000     string  127.0.0.1       # IP address.
 0x00040000     int     3030            # Port.
 # Port 1
 0x00000001     int     0               # Active socket.
 0x00010001     int     0x0800          # KAfInet.
 0x00020001     int     6               # KProtocolInetTcp.
 0x00030001     string  172.16.0.2      # IP address.
 0x00040001     int     3030            # Port.

Note, the Central Repository file can be written to by any process with WriteDeviceData capability. It is therefore possible to dynamically add new, and alter existing port configurations.


Copyright

Copyright (c) 2008-2010 Accenture. All rights reserved.