XMMS2
|
00001 #include <stdlib.h> 00002 #include "xmmsc/xmmsc_ipc_transport.h" 00003 #include "socket_tcp.h" 00004 #include "xmmsc/xmmsc_stringport.h" 00005 #include "xmmsc/xmmsc_util.h" 00006 00007 xmms_ipc_transport_t * 00008 xmms_ipc_client_init (const char *path) 00009 { 00010 xmms_ipc_transport_t *transport = NULL; 00011 xmms_url_t *url; 00012 00013 x_return_val_if_fail (path, NULL); 00014 00015 url = parse_url (path); 00016 x_return_val_if_fail (url, NULL); 00017 00018 if (!strcasecmp (url->protocol, "") || !strcasecmp (url->protocol, "unix")) { 00019 transport = NULL; 00020 } else if (!strcasecmp (url->protocol, "tcp")) { 00021 transport = xmms_ipc_tcp_client_init (url, url->ipv6_host); 00022 } 00023 00024 free_url (url); 00025 return transport; 00026 } 00027 00028 xmms_ipc_transport_t * 00029 xmms_ipc_server_init (const char *path) 00030 { 00031 xmms_ipc_transport_t *transport = NULL; 00032 xmms_url_t *url; 00033 00034 x_return_val_if_fail (path, NULL); 00035 00036 url = parse_url (path); 00037 x_return_val_if_fail (url, NULL); 00038 00039 if (!strcasecmp (url->protocol, "") || !strcasecmp (url->protocol, "unix")) { 00040 transport = NULL; 00041 } else if (!strcasecmp (url->protocol, "tcp")) { 00042 transport = xmms_ipc_tcp_server_init (url, url->ipv6_host); 00043 } 00044 00045 free_url (url); 00046 return transport; 00047 }