| # Copyright 2019 syzkaller project authors. All rights reserved. |
| # Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file. |
| |
| # Hafnium is a hypervisor. |
| # See https://hafnium.googlesource.com/hafnium and docs/hafnium/README.md |
| |
| include <uapi/linux/socket.h> |
| include <linux/socket.h> |
| include <linux/net.h> |
| |
| define AF_HF AF_ECONET |
| |
| resource sock_hf[sock] |
| |
| socket$hf(domain const[AF_HF], type const[SOCK_DGRAM], proto const[0]) sock_hf |
| connect$hf(fd sock_hf, addr ptr[in, sockaddr_hf], addrlen len[addr]) |
| sendmsg$hf(fd sock_hf, msg ptr[in, send_msghdr], f flags[send_flags]) |
| recvmsg$hf(fd sock_hf, msg ptr[inout, recv_msghdr], f flags[recv_flags]) |
| |
| sockaddr_hf { |
| family const[AF_HF, int16] |
| vm_id proc[1, 2, int32] |
| port int64 |
| } |