From: Robert Date: Sun, 8 Nov 2009 18:41:40 +0000 (+0000) Subject: fixed capmt connection state X-Git-Tag: 2.12~450 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=4fa5e52a09a42fd9b65f4d8399fa52c6d127de4f;p=thirdparty%2Ftvheadend.git fixed capmt connection state --- diff --git a/src/capmt.c b/src/capmt.c index 695695e95..d3bb59698 100644 --- a/src/capmt.c +++ b/src/capmt.c @@ -333,6 +333,7 @@ capmt_thread(void *aux) while (capmt->capmt_running) { capmt->capmt_sock = -1; capmt->capmt_sock_ca0 = -1; + capmt->capmt_connected = 0; pthread_mutex_lock(&global_lock); @@ -350,6 +351,8 @@ capmt_thread(void *aux) snprintf(serv_addr_un.sun_path, sizeof(serv_addr_un.sun_path), "%s", capmt->capmt_sockfile); if (connect(capmt->capmt_sock, (const struct sockaddr*)&serv_addr_un, sizeof(serv_addr_un)) == 0) { + capmt->capmt_connected = 1; + /* open connection to emulated ca0 device */ capmt->capmt_sock_ca0 = socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP); @@ -365,6 +368,8 @@ capmt_thread(void *aux) } else tvhlog(LOG_ERR, "capmt", "Error connecting to %s: %s", capmt->capmt_sockfile, strerror(errno)); + capmt->capmt_connected = 0; + /* close opened sockets */ if (capmt->capmt_sock > 0) close(capmt->capmt_sock);