int cwc_fd;
+ int cwc_keepalive_interval;
int cwc_retry_delay;
pthread_t cwc_tid;
}
- /* If nothing is to be sent in CWC_KEEPALIVE_INTERVAL seconds we
+ /* If nothing is to be sent in keepalive interval seconds we
need to send a keepalive */
- mono = mclk() + sec2mono(CWC_KEEPALIVE_INTERVAL);
+ mono = mclk() + sec2mono(cwc->cwc_keepalive_interval);
do {
r = tvh_cond_timedwait(&cwc->cwc_writer_cond, &cwc->cwc_writer_mutex, mono);
if(r == ETIMEDOUT) {
while(!cwc_must_break(cwc)) {
if((r = cwc_read_message(cwc, "Decoderloop",
- CWC_KEEPALIVE_INTERVAL * 2 * 1000)) < 0)
+ cwc->cwc_keepalive_interval * 2 * 1000)) < 0)
break;
cwc_running_reply(cwc, cwc->cwc_buf[12], cwc->cwc_buf, r);
}
.off = offsetof(cwc_t, cwc_emmex),
.def.i = 1
},
+ {
+ .type = PT_INT,
+ .id = "keepalive_interval",
+ .name = N_("Keepalive interval"),
+ .desc = N_("Keepalive interval in seconds"),
+ .def.i = CWC_KEEPALIVE_INTERVAL,
+ },
{ }
}
};
cwc->cac_start = cwc_service_start;
cwc->cac_conf_changed = cwc_conf_changed;
cwc->cac_caid_update = cwc_caid_update;
+ cwc->cwc_keepalive_interval = CWC_KEEPALIVE_INTERVAL;
return (caclient_t *)cwc;
}