XMMS2
src
lib
xmmsipc
transport_win.c
Go to the documentation of this file.
1
#include <stdlib.h>
2
#include "
xmmsc/xmmsc_ipc_transport.h
"
3
#include "
socket_tcp.h
"
4
#include "
xmmsc/xmmsc_stringport.h
"
5
#include "
xmmsc/xmmsc_util.h
"
6
7
xmms_ipc_transport_t
*
8
xmms_ipc_client_init
(
const
char
*path)
9
{
10
xmms_ipc_transport_t
*transport = NULL;
11
xmms_url_t
*url;
12
13
x_return_val_if_fail
(path, NULL);
14
15
url =
parse_url
(path);
16
x_return_val_if_fail
(url, NULL);
17
18
if
(!strcasecmp (url->
protocol
,
""
) || !strcasecmp (url->
protocol
,
"unix"
)) {
19
transport = NULL;
20
}
else
if
(!strcasecmp (url->
protocol
,
"tcp"
)) {
21
transport =
xmms_ipc_tcp_client_init
(url, url->
ipv6_host
);
22
}
23
24
free_url
(url);
25
return
transport;
26
}
27
28
xmms_ipc_transport_t
*
29
xmms_ipc_server_init
(
const
char
*path)
30
{
31
xmms_ipc_transport_t
*transport = NULL;
32
xmms_url_t
*url;
33
34
x_return_val_if_fail
(path, NULL);
35
36
url =
parse_url
(path);
37
x_return_val_if_fail
(url, NULL);
38
39
if
(!strcasecmp (url->
protocol
,
""
) || !strcasecmp (url->
protocol
,
"unix"
)) {
40
transport = NULL;
41
}
else
if
(!strcasecmp (url->
protocol
,
"tcp"
)) {
42
transport =
xmms_ipc_tcp_server_init
(url, url->
ipv6_host
);
43
}
44
45
free_url
(url);
46
return
transport;
47
}
xmmsc_util.h
free_url
void free_url(xmms_url_t *url)
Definition:
url.c:94
xmmsc_ipc_transport.h
xmms_url_St::protocol
char * protocol
Definition:
url.h:5
xmms_ipc_server_init
xmms_ipc_transport_t * xmms_ipc_server_init(const char *path)
Definition:
transport_win.c:29
xmmsc_stringport.h
xmms_ipc_tcp_client_init
xmms_ipc_transport_t * xmms_ipc_tcp_client_init(const xmms_url_t *url, int ipv6)
Definition:
socket_tcp.c:67
xmms_ipc_transport_St
Definition:
xmmsc_ipc_transport.h:40
xmms_url_St::ipv6_host
int ipv6_host
Definition:
url.h:8
socket_tcp.h
xmms_ipc_tcp_server_init
xmms_ipc_transport_t * xmms_ipc_tcp_server_init(const xmms_url_t *url, int ipv6)
Definition:
socket_tcp.c:171
parse_url
xmms_url_t * parse_url(const char *url)
Split a URL into its respective parts.
Definition:
url.c:17
x_return_val_if_fail
#define x_return_val_if_fail(expr, val)
Definition:
xmmsc_util.h:13
xmms_ipc_client_init
xmms_ipc_transport_t * xmms_ipc_client_init(const char *path)
Definition:
transport_win.c:8
xmms_url_St
Definition:
url.h:4
Generated by
1.8.17