From 1fc656e1026405907295b7bdc4d8726cb920a2f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20GIBERT?= Date: Wed, 24 Feb 2016 21:03:55 +0100 Subject: [PATCH] new Socket API defs --- INC/LIBTCPIP.I.txt | 102 ++++++++++++++++++++++++++++++++------------- 1 file changed, 72 insertions(+), 30 deletions(-) diff --git a/INC/LIBTCPIP.I.txt b/INC/LIBTCPIP.I.txt index 4bf69229..a22a9203 100644 --- a/INC/LIBTCPIP.I.txt +++ b/INC/LIBTCPIP.I.txt @@ -6,6 +6,17 @@ AUTO 6 .LIST OFF .OP 65C02 *-------------------------------------- +K.ARPCACHE.SIZE .EQ 10 +K.DNSCACHE.SIZE .EQ 10 +K.SKTTABLE.SIZE .EQ 64 +K.ETH.FRAME.LEN .EQ 1514 +K.IP.TTL .EQ 64 +K.DNS.MAXLEN .EQ 64 +K.DYNPORT.START .EQ 49152 +K.DYNPORT.END .EQ 65535 +K.TCP.MSS .EQ K.ETH.FRAME.LEN-20-20-14 +K.TCP.WSIZE .EQ K.TCP.MSS +*-------------------------------------- LIBTCPIP.SET.IPCFG .EQ 4 LIBTCPIP.GET.IPCFG .EQ 6 @@ -33,19 +44,22 @@ LIBTCPIP.DNS.QUERY .EQ 42 LIBTCPIP.DNS.ADD .EQ 44 LIBTCPIP.DNS.GETCACHE .EQ 46 -LIBTCPIP.ARP.IN .EQ 48 -LIBTCPIP.IP.IN .EQ 50 +LIBTCPIP.RCVD.FRAMEA .EQ 48 +LIBTCPIP.RCVD.FRAME .EQ 50 LIBTCPIP.SKT.NEW .EQ 52 -LIBTCPIP.SKT.LISTEN .EQ 54 -LIBTCPIP.SKT.ACCEPT .EQ 56 +*LIBTCPIP.SKT.LISTEN .EQ 54 +LIBTCPIP.SKT.ACCEPTA .EQ 56 LIBTCPIP.SKT.SENDA .EQ 58 LIBTCPIP.SKT.SEND .EQ 60 LIBTCPIP.SKT.RCVDA .EQ 62 LIBTCPIP.SKT.RCVD .EQ 64 -LIBTCPIP.SKT.CLOSE .EQ 66 +LIBTCPIP.SKT.CLOSEA .EQ 66 LIBTCPIP.SKT.GETTABLE .EQ 68 -LIBTCPIP.SKT.GET .EQ 70 +LIBTCPIP.SKT.GETA .EQ 70 + +LIBTCPIP.HST.GETBYNAME .EQ 72 +LIBTCPIP.HST.GETBYADDR .EQ 74 *-------------------------------------- ERR.OOS .EQ $BF ERR.SBUSY .EQ $BE @@ -114,22 +128,60 @@ S.SOCKET.SOCK.STREAM .EQ 2 S.SOCKET.SOCK.RAW .EQ 3 S.SOCKET.SOCK.RDM .EQ 4 S.SOCKET.SOCK.SEQPACKET .EQ 5 -S.SOCKET.SO .EQ 2 - +S.SOCKET.SO .EQ 1 +S.SOCKET.SO.DEBUG .EQ $01 +S.SOCKET.SO.ACCEPTCONN .EQ $02 +S.SOCKET.SO.REUSEADDR .EQ $04 +S.SOCKET.SO.KEEPALIVE .EQ $08 +S.SOCKET.SO.DONTROUTE .EQ $10 +S.SOCKET.SO.BROADCAST .EQ $20 +S.SOCKET.SO.USELOOPBACK .EQ $40 +S.SOCKET.SO.LINGER .EQ $80 +S.SOCKET.STATUS .EQ 2 +S.SOCKET.STATUS.CLOSED .EQ 0 +S.SOCKET.STATUS.LISTEN .EQ 1 +S.SOCKET.STATUS.SYNSENT .EQ 2 +S.SOCKET.STATUS.SYNRCVD .EQ 3 +S.SOCKET.STATUS.ESTBLSH .EQ 4 +S.SOCKET.STATUS.CLWAIT .EQ 5 +S.SOCKET.STATUS.LASTACK .EQ 6 +S.SOCKET.STATUS.FINWT1 .EQ 7 +S.SOCKET.STATUS.FINWT2 .EQ 8 +S.SOCKET.STATUS.CLOSING .EQ 9 +S.SOCKET.STATUS.TIMEWT .EQ 10 +S.SOCKET.PARENT .EQ 3 S.SOCKET.SRC.ADDR .EQ 4 S.SOCKET.SRC.PORT .EQ 8 S.SOCKET.DST.ADDR .EQ 10 S.SOCKET.DST.PORT .EQ 14 +* Listen type Queue +S.SOCKET.LQ.HEAD .EQ 16 +S.SOCKET.LQ.TAIL .EQ 17 +S.SOCKET.LQ .EQ 18 +S.SOCKET.LQ.MAX .EQ 14 14 hSocket +* Datagram type Queue +S.SOCKET.DQ.HEAD .EQ 16 +S.SOCKET.DQ.TAIL .EQ 17 +S.SOCKET.DQ .EQ 18 +S.SOCKET.DQ.MAX .EQ 14 14 hMem (frames) +* Stream type Queue +S.SOCKET.SQ.hMem .EQ 16 +S.SOCKET.SQ.SIZE .EQ 18 +S.SOCKET.SQ.HEAD .EQ 20 +S.SOCKET.SQ.TAIL .EQ 22 +S.SOCKET.SQ.SEQNUM .EQ 24 +S.SOCKET.SQ.ACKNUM .EQ 28 * -S.SOCKET .EQ 16 +S.SOCKET .EQ 32 *-------------------------------------- -S.ETH.DSTMAC .EQ 0 -S.ETH.SRCMAC .EQ 6 -S.ETH.ETHERTYPE .EQ 6+6 +S.ETH.FRAMELEN .EQ 0 +S.ETH.DSTMAC .EQ 2 +S.ETH.SRCMAC .EQ 8 +S.ETH.ETHERTYPE .EQ 14 S.ETH.ETHERTYPE.IP .EQ $800 S.ETH.ETHERTYPE.ARP .EQ $806 * -S.ETH .EQ 6+6+2 +S.ETH .EQ 2+6+6+2 *-------------------------------------- S.ARP.HTYPE .EQ S.ETH+0 $0001 S.ARP.PTYPE .EQ S.ETH+2 $0800 @@ -183,14 +235,14 @@ S.TCP.DSTPORT .EQ S.IP+2 S.TCP.SEQ.NUMBER .EQ S.IP+4 S.TCP.ACK.NUMBER .EQ S.IP+8 S.TCP.DATAOFFSET .EQ S.IP+12 -S.TCP.DATAOFFSET20 .EQ 5 +S.TCP.DATAOFFSET20 .EQ $50 S.TCP.OPTIONS .EQ S.IP+13 -S.TCP.OPTIONS.URG .EQ %00000100 -S.TCP.OPTIONS.ACK .EQ %00001000 -S.TCP.OPTIONS.PSH .EQ %00010000 -S.TCP.OPTIONS.RST .EQ %00100000 -S.TCP.OPTIONS.SYN .EQ %01000000 -S.TCP.OPTIONS.FIN .EQ %10000000 +S.TCP.OPTIONS.URG .EQ %00100000 +S.TCP.OPTIONS.ACK .EQ %00010000 +S.TCP.OPTIONS.PSH .EQ %00001000 +S.TCP.OPTIONS.RST .EQ %00000100 +S.TCP.OPTIONS.SYN .EQ %00000010 +S.TCP.OPTIONS.FIN .EQ %00000001 S.TCP.WINDOW .EQ S.IP+14 S.TCP.CHECKSUM .EQ S.IP+16 S.TCP.URGPTR .EQ S.IP+18 @@ -266,15 +318,5 @@ S.DNS.QTYPE.SRV .EQ 33 S.DNS.QTYPE.ANY .EQ 255 S.DNS.QCLASS.IN .EQ 1 *-------------------------------------- -S.RPC.XID .EQ S.UDP+0 -S.RPC.C.RPCVERS .EQ S.UDP+4 -S.RPC.C.PROG .EQ S.UDP+8 -S.RPC.C.VERS .EQ S.UDP+12 -S.RPC.C.PROC .EQ S.UDP+16 -S.RPC.C.CRED .EQ S.UDP+20 -S.RPC.C.VERF .EQ S.UDP+24 -* -S.RPC .EQ 28 -*-------------------------------------- MAN SAVE INC/LIBTCPIP.I