xref: /optee_os/lib/libutee/include/pta_socket.h (revision 78b7c7c7653f8bff42fe44d31a79d7f6bbfd4d47)
1 /* SPDX-License-Identifier: BSD-2-Clause */
2 /*
3  * Copyright (c) 2016, Linaro Limited
4  * All rights reserved.
5  */
6 
7 #ifndef __PTA_SOCKET
8 #define __PTA_SOCKET
9 
10 #define PTA_SOCKET_UUID { 0x3b996a7d, 0x2c2b, 0x4a49, { \
11 			  0xa8, 0x96, 0xe1, 0xfb, 0x57, 0x66, 0xd2, 0xf4 } }
12 
13 /*
14  * [in]		value[0].a	ip version TEE_IP_VERSION_* from tee_ipsocket.h
15  * [in]		value[0].b	server port number
16  * [in]		memref[1]	server address
17  * [in]		value[2].a	protocol, TEE_ISOCKET_PROTOCOLID_*
18  * [out]	value[3].a	socket handle
19  */
20 #define PTA_SOCKET_OPEN		1
21 
22 /*
23  * [in]		value[0].a	socket handle
24  */
25 #define PTA_SOCKET_CLOSE	2
26 
27 #define PTA_SOCKET_TIMEOUT_NONBLOCKING	0
28 #define PTA_SOCKET_TIMEOUT_BLOCKING	0xffffffff
29 
30 /*
31  * [in]		value[0].a	socket handle
32  * [in]		value[0].b	timeout ms or TEE_TIMEOUT_INFINITE
33  * [in]		memref[1]	buffer to transmit
34  * [out]	value[2].a	number of transmitted bytes
35  */
36 #define PTA_SOCKET_SEND		3
37 
38 /*
39  * [in]		value[0].a	socket handle
40  * [in]		value[0].b	timeout ms or TEE_TIMEOUT_INFINITE
41  * [out]	memref[1]	buffer
42  */
43 #define PTA_SOCKET_RECV		4
44 
45 /*
46  * [in]		value[0].a	socket handle
47  * [in]		value[0].b	ioctl command
48  * [in/out]	memref[1]	buffer
49  */
50 #define PTA_SOCKET_IOCTL	5
51 
52 #endif /*__PTA_SOCKET*/
53