XMMS2
test.c
Go to the documentation of this file.
1
2#include <glib.h>
3#include <stdio.h>
4#include <unistd.h>
5#include <sys/types.h>
6#include <sys/socket.h>
7#include <stdlib.h>
8
9#include "ipc_transport.h"
10
11int main ()
12{
13 xmms_ipc_transport_t *transport;
14 gint fd;
15
16 transport = xmms_ipc_server_init ("unix:///tmp/xmms2.socket");
17 if (!transport) {
18 printf ("Korv!\n");
19 exit (-1);
20 }
21
22 fd = xmms_ipc_transport_fd_get (transport);
23
24 while (1) {
25 fd_set set;
26
27 FD_ZERO (&set);
28 FD_SET (fd, &set);
29
30 printf ("Select... %d\n", fd);
31 if (select (fd+1, &set, NULL, NULL, NULL) > 0) {
32 gchar buffer[5];
33
34 xmms_ipc_transport_t *client = xmms_ipc_server_accept (transport);
35 if (client == NULL)
36 return 0;
37
38 printf ("Client connected...\n");
39 xmms_ipc_transport_read (client, buffer, 4);
40 printf ("%s\n", buffer);
41 return 0;
42 } else {
43 return 0;
44 }
45 }
46
47}
int main()
Definition test.c:11
int xmms_ipc_transport_read(xmms_ipc_transport_t *ipct, char *buffer, int len)
Definition transport.c:37
xmms_socket_t xmms_ipc_transport_fd_get(xmms_ipc_transport_t *ipct)
Definition transport.c:49
xmms_ipc_transport_t * xmms_ipc_server_accept(xmms_ipc_transport_t *ipct)
Definition transport.c:56
xmms_ipc_transport_t * xmms_ipc_server_init(const char *path)