summaryrefslogtreecommitdiff
path: root/tools/vdrdiscovery.c
diff options
context:
space:
mode:
authorphintuka <phintuka>2009-09-13 12:12:32 +0000
committerphintuka <phintuka>2009-09-13 12:12:32 +0000
commit47f60343f6e12cfb21ec3fc782f3269c79a5ea90 (patch)
tree8cabd75b3f9d427bfaa3debc744e1bad63eae025 /tools/vdrdiscovery.c
parente33d161de7ca3d7af969fd5a483f5a09fe7cdc02 (diff)
downloadxineliboutput-unlabeled-1.8.2.tar.gz
xineliboutput-unlabeled-1.8.2.tar.bz2
Merged revision 1.9unlabeled-1.8.2
Cosmetics
Diffstat (limited to 'tools/vdrdiscovery.c')
-rw-r--r--tools/vdrdiscovery.c44
1 files changed, 23 insertions, 21 deletions
diff --git a/tools/vdrdiscovery.c b/tools/vdrdiscovery.c
index f4531db8..30f52f24 100644
--- a/tools/vdrdiscovery.c
+++ b/tools/vdrdiscovery.c
@@ -7,7 +7,7 @@
* See the main source file 'xineliboutput.c' for copyright information and
* how to reach the author.
*
- * $Id: vdrdiscovery.c,v 1.8 2008-11-14 22:19:45 phintuka Exp $
+ * $Id: vdrdiscovery.c,v 1.8.2.1 2009-09-13 12:12:32 phintuka Exp $
*
*/
@@ -26,7 +26,7 @@
#include "vdrdiscovery.h"
/*
- *
+ * constants
*/
#ifndef DISCOVERY_PORT
@@ -48,29 +48,31 @@
static inline int discovery_init(int port)
{
int fd_discovery = -1;
+ int iBroadcast = 1, iReuse = 1;
struct sockaddr_in sin;
if ((fd_discovery = socket(PF_INET, SOCK_DGRAM, 0/*IPPROTO_TCP*/)) < 0) {
- LOGERR("socket() failed (UDP discovery)");
- } else {
- int iBroadcast = 1, iReuse = 1;
- if(setsockopt(fd_discovery, SOL_SOCKET, SO_BROADCAST, &iBroadcast, sizeof(int)) < 0)
- LOGERR("setsockopt(SO_BROADCAST) failed");
- if(setsockopt(fd_discovery, SOL_SOCKET, SO_REUSEADDR, &iReuse, sizeof(int)) < 0)
- LOGERR("setsockopt(SO_REUSEADDR) failed");
- sin.sin_family = AF_INET;
- sin.sin_port = htons(port);
- sin.sin_addr.s_addr = htonl(INADDR_BROADCAST);
-
- if (bind(fd_discovery, (struct sockaddr *)&sin, sizeof(sin)) < 0) {
- LOGERR("bind() failed (UDP discovery)");
- } else {
- return fd_discovery;
- }
+ LOGERR("discovery_init: socket() failed");
+ return -1;
}
-
- close(fd_discovery);
- return -1;
+
+ if (setsockopt(fd_discovery, SOL_SOCKET, SO_BROADCAST, &iBroadcast, sizeof(int)) < 0)
+ LOGERR("discovery_init: setsockopt(SO_BROADCAST) failed");
+
+ if (setsockopt(fd_discovery, SOL_SOCKET, SO_REUSEADDR, &iReuse, sizeof(int)) < 0)
+ LOGERR("discovery_init: setsockopt(SO_REUSEADDR) failed");
+
+ sin.sin_family = AF_INET;
+ sin.sin_port = htons(port);
+ sin.sin_addr.s_addr = htonl(INADDR_BROADCAST);
+
+ if (bind(fd_discovery, (struct sockaddr *)&sin, sizeof(sin)) < 0) {
+ LOGERR("discovery_init: bind() failed");
+ close(fd_discovery);
+ return -1;
+ }
+
+ return fd_discovery;
}
int udp_discovery_init(void)