diff --git a/dump1090.c b/dump1090.c index 356c1f5..467676b 100644 --- a/dump1090.c +++ b/dump1090.c @@ -116,7 +116,7 @@ void modesInitConfig(void) { Modes.net_output_sbs_ports = strdup("30003"); Modes.net_input_beast_ports = strdup("30004,30104"); Modes.net_output_beast_ports = strdup("30005"); - Modes.net_output_stratux_ports= strdup("30006"); + Modes.net_output_stratux_ports= NULL; Modes.interactive_display_ttl = MODES_INTERACTIVE_DISPLAY_TTL; Modes.json_interval = 1000; Modes.json_location_accuracy = 1; @@ -535,7 +535,8 @@ int main(int argc, char **argv) { free(Modes.net_output_sbs_ports); Modes.net_output_sbs_ports = strdup(argv[++j]); } else if (!strcmp(argv[j],"--net-stratux-port") && more) { - free(Modes.net_output_stratux_ports); + if (Modes.net_output_stratux_ports) + free(Modes.net_output_stratux_ports); Modes.net_output_stratux_ports = strdup(argv[++j]); } else if (!strcmp(argv[j],"--net-buffer") && more) { Modes.net_sndbuf_size = atoi(argv[++j]); diff --git a/net_io.c b/net_io.c index 3c5f2ca..408b6b6 100644 --- a/net_io.c +++ b/net_io.c @@ -269,8 +269,10 @@ void modesInitNet(void) { s = serviceInit("Basestation TCP output", &Modes.sbs_out, send_sbs_heartbeat, READ_MODE_IGNORE, NULL, NULL); serviceListen(s, Modes.net_bind_address, Modes.net_output_sbs_ports); - s = serviceInit("Stratux TCP output", &Modes.stratux_out, send_stratux_heartbeat, READ_MODE_IGNORE, NULL, NULL); - serviceListen(s, Modes.net_bind_address, Modes.net_output_stratux_ports); + if (Modes.net_output_stratux_ports) { + s = serviceInit("Stratux TCP output", &Modes.stratux_out, send_stratux_heartbeat, READ_MODE_IGNORE, NULL, NULL); + serviceListen(s, Modes.net_bind_address, Modes.net_output_stratux_ports); + } s = serviceInit("Raw TCP input", NULL, NULL, READ_MODE_ASCII, "\n", decodeHexMessage); serviceListen(s, Modes.net_bind_address, Modes.net_input_raw_ports); @@ -1042,7 +1044,8 @@ void modesQueueOutput(struct modesMessage *mm, struct aircraft *a) { // Delegate to the format-specific outputs, each of which makes its own decision about filtering messages modesSendSBSOutput(mm, a); - modesSendStratuxOutput(mm, a); + if (Modes.net_output_stratux_ports) + modesSendStratuxOutput(mm, a); modesSendRawOutput(mm, a); modesSendBeastVerbatimOutput(mm, a); modesSendBeastCookedOutput(mm, a);