A2osX/.Docs/LIBTCPIP.md
2018-09-20 17:33:05 +02:00

158 lines
2.5 KiB
Markdown

*** Auto generated by docgen.cmd ***
# ARP.Clear
Clear ARP Cache
**In:**
**Out:**
# ARP.Query
Query ARP Cache and returns HW address
**In:**
PUSHW PTR to MAC (to fill)
PUSHW PTR to IP
**Out:**
CC: hit: MAC filled
CS: missed
# ARP.Add
Add a static ARP cache record
**In:**
PUSHW PTR to MAC
PUSHW PTR to IP
# ARP.GetCAche
Return a Ptr to ARP Cache Table
**In:**
**Out:**
Y,A = PTR to ARP.CACHE
# DNS.Clear
Clear DNS Cache
**In:**
**Out:**
# DNS.Query
Query DNS for specified host
**In:**
PUSHW = PTR to IP to fill with cached data
* PUSHW = hostname PTR to PSTR
**Out:**
CC: hit: IP filled with address
CS: missed
# DNS.Add
Add a static DNS record
**In:**
PUSHW = PTR to IP
PUSHW = hostname CSTR to Add
# DNS.GetCAche
Return a Ptr to DNS Cache Table
**In:**
**Out:**
Y,A = PTR to DNS.CACHE
# SKT.New
Create a new socket
## C
`hSOCKET skt.new(void *template);`
## ASM
**In:**
`>PUSHW template`
`>LIBCALL hLIBTCPIP,LIBTCPIP.SKT.New`
**Out:**
CC: A = hSOCKET
CS: A = EC
# SKT.Close
Close socket
**In:**
A = hSocket
**Out:**
# SKT.Get
Get Ptr to socket
**In:**
A = hSocket
**Out:**
Y,A = pS.SOCKET
# SKT.GetTable
Get socket table
**In:**
**Out:**
Y,A = pS.SOCKET
# SKT.Accept
Check for an incoming connection
**In:**
A = hListeningSocket
**Out:**
A = hSocket
# SKT.MkNod
## C
`hFD skt.mknod(hSOCKET s);`
## ASM
**In:**
`lda s`
`>LIBCALL hLIBTCPIP,LIBTCPIP.SKT.MkNod`
**Out:**
CC: A = hFD
CS: A = EC
# SKT.Read (STREAM)
## C
`int skt.read(hFD fd, void *buf, int count);`
## ASM
**In:**
`>PUSHWI count`
`>PUSHW buf`
`lda fd`
`>LIBCALL hLIBTCPIP,LIBTCPIP.skt.read`
**Out:**
CC: Y,A = bytes read
CS: A = EC
# SKT.Write (STREAM)
## C
`int skt.write(hFD fd, const void *buf, int count);`
## ASM
**In:**
`>PUSHWI count`
`>PUSHW buf`
`lda fd`
`>LIBCALL hLIBTCPIP,LIBTCPIP.skt.write`
**Out:**
CC: Y,A = bytes written
CS: A = EC
# SKT.Rcvd (DGRAM,RAW)
**In:**
A = hSocket
**Out:**
A = hFrame
# SKT.Send (DGRAM,RAW)
## C
`int skt.send(hFD fd, const void *buf, int count);`
## ASM
**In:**
`>PUSHWI count`
`>PUSHW buf`
`lda fd`
`>LIBCALL hLIBTCPIP,LIBTCPIP.skt.send`
**Out:**
CC: Y,A = bytes written
CS: A = EC