diff --git a/src/satip/rtsp.c b/src/satip/rtsp.c index e194bcc..1dd1904 100644 --- a/src/satip/rtsp.c +++ b/src/satip/rtsp.c @@ -935,6 +935,7 @@ rtsp_parse_cmd has_args = !TAILQ_EMPTY(&hc->hc_req_args); fe = atoi(http_arg_get_remove(&hc->hc_req_args, "fe") ?: 0); + fe = satip_server_conf.satip_drop_fe ? 0 : fe; s = http_arg_get_remove(&hc->hc_req_args, "addpids"); if (parse_pids(s, &addpids)) goto end; s = http_arg_get_remove(&hc->hc_req_args, "delpids"); diff --git a/src/satip/server.c b/src/satip/server.c index e6b5fdf..148a2c3 100644 --- a/src/satip/server.c +++ b/src/satip/server.c @@ -719,6 +719,16 @@ const idclass_t satip_server_class = { .group = 1, }, { + .type = PT_BOOL, + .id = "satip_drop_fe", + .name = N_("Drop \"fe=\" parameter"), + .desc = N_("Discard the FrontEnd parameter in RTSP requests, " + "as some clients incorretly use it."), + .off = offsetof(struct satip_server_conf, satip_drop_fe), + .opts = PO_EXPERT, + .group = 1, + }, + { .type = PT_INT, .id = "satip_muxcnf", .name = N_("Mux handling"), diff --git a/src/satip/server.h b/src/satip/server.h index 054e481..5dc6eac 100644 --- a/src/satip/server.h +++ b/src/satip/server.h @@ -51,6 +51,7 @@ struct satip_server_conf { int satip_notcp_mode; int satip_anonymize; int satip_noupnp; + int satip_drop_fe; int satip_iptv_sig_level; int satip_force_sig_level; int satip_dvbs;