diff options
author | Pierre Ossman <ossman@cendio.se> | 2006-01-05 18:43:10 +0000 |
---|---|---|
committer | Pierre Ossman <ossman@cendio.se> | 2006-01-05 18:43:10 +0000 |
commit | 13496bb73ecd2a76a83bf528d9a180084c8c006d (patch) | |
tree | 7e54b8b798ede6c2ac803673ebe44833b02b8d46 | |
parent | 3a3b4aff37397b786782d5a7e1f106b83d272abd (diff) |
Handle when the platform doesn't have UNIX sockets.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/ossman@377 fefdeb5f-60dc-0310-8127-8f9354f1896f
-rw-r--r-- | polyp/socket-client.c | 16 | ||||
-rw-r--r-- | polyp/socket-server.c | 15 | ||||
-rw-r--r-- | polyp/socket-util.c | 19 |
3 files changed, 47 insertions, 3 deletions
diff --git a/polyp/socket-client.c b/polyp/socket-client.c index 2eecc347..a55fd4ba 100644 --- a/polyp/socket-client.c +++ b/polyp/socket-client.c @@ -31,10 +31,14 @@ #include <string.h> #include <assert.h> #include <stdlib.h> -#include <sys/un.h> #include <netinet/in.h> #include <arpa/inet.h> #include <netdb.h> + +#ifdef HAVE_SYS_UN_H +#include <sys/un.h> +#endif + #ifdef HAVE_LIBASYNCNS #include <asyncns.h> #endif @@ -198,6 +202,8 @@ struct pa_socket_client* pa_socket_client_new_ipv4(struct pa_mainloop_api *m, ui return pa_socket_client_new_sockaddr(m, (struct sockaddr*) &sa, sizeof(sa)); } +#ifdef HAVE_SYS_UN_H + struct pa_socket_client* pa_socket_client_new_unix(struct pa_mainloop_api *m, const char *filename) { struct sockaddr_un sa; assert(m && filename); @@ -210,6 +216,14 @@ struct pa_socket_client* pa_socket_client_new_unix(struct pa_mainloop_api *m, co return pa_socket_client_new_sockaddr(m, (struct sockaddr*) &sa, sizeof(sa)); } +#else /* HAVE_SYS_UN_H */ + +struct pa_socket_client* pa_socket_client_new_unix(struct pa_mainloop_api *m, const char *filename) { + return NULL; +} + +#endif /* HAVE_SYS_UN_H */ + static int sockaddr_prepare(struct pa_socket_client *c, const struct sockaddr *sa, size_t salen) { assert(c); assert(sa); diff --git a/polyp/socket-server.c b/polyp/socket-server.c index 7d6035c9..d46db6c8 100644 --- a/polyp/socket-server.c +++ b/polyp/socket-server.c @@ -31,10 +31,13 @@ #include <sys/socket.h> #include <stdio.h> #include <unistd.h> -#include <sys/un.h> #include <netinet/in.h> #include <arpa/inet.h> +#ifdef HAVE_SYS_UN_H +#include <sys/un.h> +#endif + #ifdef HAVE_LIBWRAP #include <tcpd.h> #endif @@ -137,6 +140,8 @@ struct pa_socket_server* pa_socket_server_ref(struct pa_socket_server *s) { return s; } +#ifdef HAVE_SYS_UN_H + struct pa_socket_server* pa_socket_server_new_unix(struct pa_mainloop_api *m, const char *filename) { int fd = -1; struct sockaddr_un sa; @@ -182,6 +187,14 @@ fail: return NULL; } +#else /* HAVE_SYS_UN_H */ + +struct pa_socket_server* pa_socket_server_new_unix(struct pa_mainloop_api *m, const char *filename) { + return NULL; +} + +#endif /* HAVE_SYS_UN_H */ + struct pa_socket_server* pa_socket_server_new_ipv4(struct pa_mainloop_api *m, uint32_t address, uint16_t port, const char *tcpwrap_service) { struct pa_socket_server *ss; int fd = -1; diff --git a/polyp/socket-util.c b/polyp/socket-util.c index cd132d7d..4204ec95 100644 --- a/polyp/socket-util.c +++ b/polyp/socket-util.c @@ -31,7 +31,6 @@ #include <string.h> #include <stdio.h> #include <sys/types.h> -#include <sys/un.h> #include <netinet/in.h> #include <fcntl.h> #include <unistd.h> @@ -42,6 +41,10 @@ #include <sys/stat.h> #include <netdb.h> +#ifdef HAVE_SYS_UN_H +#include <sys/un.h> +#endif + #include "socket-util.h" #include "util.h" #include "xmalloc.h" @@ -161,6 +164,8 @@ int pa_socket_set_sndbuf(int fd, size_t l) { return 0; } +#ifdef HAVE_SYS_UN_H + int pa_unix_socket_is_stale(const char *fn) { struct sockaddr_un sa; int fd = -1, ret = -1; @@ -202,3 +207,15 @@ int pa_unix_socket_remove_stale(const char *fn) { return 0; } + +#else /* HAVE_SYS_UN_H */ + +int pa_unix_socket_is_stale(const char *fn) { + return -1; +} + +int pa_unix_socket_remove_stale(const char *fn) { + return -1; +} + +#endif /* HAVE_SYS_UN_H */ |