aboutsummaryrefslogtreecommitdiffstats
path: root/sys/socket.txt
diff options
context:
space:
mode:
authorAndrey Konovalov <andreyknvl@google.com>2017-01-30 19:17:38 +0100
committerAndrey Konovalov <andreyknvl@google.com>2017-01-30 21:00:45 +0100
commit1f7f5daef8b9d4665e463bd842c701b4db27f56b (patch)
tree3b8af0bd368cf9ccc1ebc130c50a4f41dabf320c /sys/socket.txt
parent4ee789185bc215d62e9cfa92e23a8de2760789cb (diff)
prog, sys: add tcp packets descriptions
Also embed tcp checksums into packets.
Diffstat (limited to 'sys/socket.txt')
-rw-r--r--sys/socket.txt23
1 files changed, 23 insertions, 0 deletions
diff --git a/sys/socket.txt b/sys/socket.txt
index c123a5db9..9e86c4de7 100644
--- a/sys/socket.txt
+++ b/sys/socket.txt
@@ -138,6 +138,7 @@ sockaddr_in {
family const[AF_INET, int16]
port proc[int16be, 20000, 4]
addr in_addr
+ pad array[const[0, int8], 8]
}
sockaddr_storage_in {
@@ -193,6 +194,28 @@ cmsghdr {
+# AF_INET: TCP support
+
+resource sock_tcp[sock]
+
+socket$tcp(domain const[AF_INET], type const[SOCK_STREAM], proto const[0]) sock_tcp
+socketpair$tcp(domain const[AF_INET], type const[SOCK_STREAM], proto const[0], fds ptr[out, tcp_pair])
+accept$tcp(fd sock_tcp, peer ptr[out, sockaddr_in, opt], peerlen ptr[inout, len[peer, int32]]) sock_tcp
+accept4$tcp(fd sock_tcp, peer ptr[out, sockaddr_in, opt], peerlen ptr[inout, len[peer, int32]], flags flags[accept_flags]) sock_tcp
+bind$tcp(fd sock_tcp, addr ptr[in, sockaddr_in], addrlen len[addr])
+connect$tcp(fd sock_tcp, addr ptr[in, sockaddr_in], addrlen len[addr])
+sendto$tcp(fd sock_tcp, buf buffer[in], len len[buf], f flags[send_flags], addr ptr[in, sockaddr_in, opt], addrlen len[addr])
+recvfrom$tcp(fd sock_tcp, buf buffer[out], len len[buf], f flags[recv_flags], addr ptr[in, sockaddr_in, opt], addrlen len[addr])
+getsockname$tcp(fd sock_tcp, addr ptr[out, sockaddr_in], addrlen ptr[inout, len[addr, int32]])
+getpeername$tcp(fd sock_tcp, peer ptr[out, sockaddr_in], peerlen ptr[inout, len[peer, int32]])
+
+tcp_pair {
+ f0 sock_tcp
+ f1 sock_tcp
+}
+
+
+
# AF_UNIX support.
resource sock_unix[sock]