wiki:Specs/Command/CON_STREAM

Version 4 (modified by ph3-der-loewe, 10 years ago) (diff)

+ client setup

CON_STREAM is a command used to connect a server side stream object to a given IO resource. In contrast to other such commands it is used to connect the stream to a network object (listen socket) on the client side.

Data Structure

Version 0

Offset Size/Type? Meaning
0 uint8 Version (Always zero)
1 uint8 Socket Type
2 uint16 Numerical address part (e.g. object or prot number)
4 string textual address part (e.g. node number or ip address)

Version 1

This is a DRAFT.

Offset Size/Type? Meaning
0 uint8 Version (Always one)
1 uint8 Socket Type
2 uint16 Flags
4 uint16 Transport Protocol ID
6 uint16 Length of Client Setup
8 uint16 Length of Socket type specific address
10 uint16 Length of Transport Protocol specific setup
12 string Client setup
... string Address (Socket type specific)
... string Transport Protocol setup

Client Setup

If Client setup data is given the size MUST be 6 and the data MUST have the following format:

Offset Size/Type? Meaning
0 uint16 Client setup flags
2 uint16 Client protocol
4 uint16 Client byte order

Socket Address

Socket Type Address Length Address Content Comment
UNIX var. Subtype, Path of Socket
FILE var. Filename. Must start with / This type may not be supported by the server for security reasons.
DECNET var Node address, object number, object name length, object name
TCP4, UDP4 6 IPv4 address and Port
TCP6, UDP6 18 IPv6 address and Port
NONE, FORK, GENSTR N/A N/A Those types must not be used to open a socket.
IPXSPX, IPX, LAT_SERVICE, LAT_REVERSE_PORT N/A N/A Not yet specified.