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 
11 int 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 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_init(const char *path)
xmms_ipc_transport_t * xmms_ipc_server_accept(xmms_ipc_transport_t *ipct)
Definition: transport.c:56
int main()
Definition: test.c:11