summaryrefslogtreecommitdiffstats
path: root/src/socket-server.c
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2004-06-14 18:38:50 +0000
committerLennart Poettering <lennart@poettering.net>2004-06-14 18:38:50 +0000
commitc8cf0c1ce9cf1b38b302ae4a2a6fa798fef85f08 (patch)
tree9f73e3140dc8762a78b4972f921077f39c4b66b0 /src/socket-server.c
parentedfad835cb7e4ab9f62de81cf4bf6b6ad9610b02 (diff)
a bunch of fixes
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@10 fefdeb5f-60dc-0310-8127-8f9354f1896f
Diffstat (limited to 'src/socket-server.c')
-rw-r--r--src/socket-server.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/socket-server.c b/src/socket-server.c
index 2a1db9a0..6ad225e3 100644
--- a/src/socket-server.c
+++ b/src/socket-server.c
@@ -104,6 +104,7 @@ fail:
struct socket_server* socket_server_new_ipv4(struct mainloop *m, uint32_t address, uint16_t port) {
int fd = -1;
struct sockaddr_in sa;
+ int on = 1;
assert(m && port);
@@ -112,10 +113,13 @@ struct socket_server* socket_server_new_ipv4(struct mainloop *m, uint32_t addres
goto fail;
}
+ if (setsockopt(fd, SOL_SOCKET, SO_REUSEADDR, &on, sizeof(on)) < 0)
+ fprintf(stderr, "setsockopt(): %s\n", strerror(errno));
+
sa.sin_family = AF_INET;
sa.sin_port = htons(port);
sa.sin_addr.s_addr = htonl(address);
-
+
if (bind(fd, (struct sockaddr *) &sa, sizeof(sa)) < 0) {
fprintf(stderr, "bind(): %s\n", strerror(errno));
goto fail;