Int 7A - Novell Netware - Spx Driver - Establish Spx Connection [N]

BX = 0011h
AL = retry count
AH = watchdog flag
ES:SI -> Event Control Block (see #3481 at BX=0003h)

Return: AL = status (00h,EFh,FDh,FFh) (see #3496)
DX = assigned connection ID number
Desc: attempt to establish a connection with a listening socket

Notes: there should always be at least two SPX ECB's listening to a socket, so
that NetWare can perform its internal packet exchanges
the first fragment should start with a SPX header (see #3497). Fill
in all destination addresses.
this function is supported by Advanced NetWare 2.1+

See Also: BX=0000h,BX=0012h,BX=0013h,BX=0014h,BX=0015h

(Table 3496)
Values for SPX function status:
00h attempting to contact destination socket
EEh no such connection
EFh local connection table full
FDh buffer size not 42 or fragment count not 1
FFh sending socket not open

Format of SPX header:
Offset Size Description (Table 3497)
00h WORD (big-endian) checksum
02h WORD (big-endian) length in bytes of total packet
04h BYTE transport control
05h BYTE packet type (see #3487 at INT 7A/BX=0003h)
06h 10 BYTEs destination internet address
10h WORD (big-endian) destination socket
12h 10 BYTEs source internet address
1Ch WORD (big-endian) source socket
1Eh BYTE connection control (see #3498)
1Fh BYTE datastream type
FEh terminate connection request packet
FFh terminate connection acknowledgement packet
other user-defined, ignored by SPX
20h WORD (big-endian) source connection ID
22h WORD (big-endian) destination connection ID
24h WORD (big-endian) sequence number
26h WORD (big-endian) acknowledge number
28h WORD (big-endian) allocation number

See Also: #3486

Bitfields for SPX connection control:
Bit(s) Description (Table 3498)
3-0 unused???
4 end of message
5 reserved
6 acknowledgement required
7 system packet