summaryrefslogtreecommitdiffstats
path: root/tools/testing/selftests/android/ion/ipcsocket.h
blob: b3e84498a8a16d8bc0f76f648e7598e51d31d0f3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#ifndef _IPCSOCKET_H
#define _IPCSOCKET_H


#define MAX_SOCK_NAME_LEN	64

char sock_name[MAX_SOCK_NAME_LEN];

/* This structure is responsible for holding the IPC data
 * data: hold the buffer fd
 * len: just the length of 32-bit integer fd
 */
struct socketdata {
	int data;
	unsigned int len;
};

/* This API is used to open the IPC socket connection
 * name: implies a unique socket name in the system
 * connecttype: implies server(0) or client(1)
 */
int opensocket(int *sockfd, const char *name, int connecttype);

/* This is the API to send socket data over IPC socket */
int sendtosocket(int sockfd, struct socketdata *data);

/* This is the API to receive socket data over IPC socket */
int receivefromsocket(int sockfd, struct socketdata *data);

/* This is the API to close the socket connection */
int closesocket(int sockfd, char *name);


#endif