1/*
2 * Copyright (c) 2017 ETH Zurich.
3 * All rights reserved.
4 *
5 * This file is distributed under the terms in the attached LICENSE file.
6 * If you do not find this file, copies can be found by writing to:
7 * ETH Zurich D-INFK, Universitaetstrasse 6, CH-8092 Zurich. Attn: Systems Group.
8 */
9
10interface net_sockets "Interface for network sockets" {
11    rpc request_descq_ep(in uint16 core, out cap ep);
12    rpc register_queue(in uint64 queue_id);
13
14    rpc new_udp_socket(out uint32 descriptor);
15    rpc new_tcp_socket(out uint32 descriptor);
16
17    rpc bind(in uint32 descriptor, in uint32 host_address, in uint16 port, out errval error, out uint16 bound_port);
18    rpc listen(in uint32 descriptor, in uint8 backlog, out errval error);
19
20    rpc connect(in uint32 descriptor, in uint32 host_address, in uint16 port, out errval error);
21    message connected(uint32 descriptor, errval error, uint32 connected_address, uint16 connected_port);
22};
23