diff --git a/src/lib/ndpi_main.c b/src/lib/ndpi_main.c index fae608df8..7ed3d5f90 100644 --- a/src/lib/ndpi_main.c +++ b/src/lib/ndpi_main.c @@ -7862,30 +7862,9 @@ void ndpi_free_flow_data_protos(struct ndpi_flow_struct* flow) { if(flow->protos.ssdp.location) ndpi_free(flow->protos.ssdp.location); - if(flow->protos.ssdp.household_smart_speaker_audio) - ndpi_free(flow->protos.ssdp.household_smart_speaker_audio); - - if(flow->protos.ssdp.rincon_household) - ndpi_free(flow->protos.ssdp.rincon_household); - - if(flow->protos.ssdp.rincon_bootseq) - ndpi_free(flow->protos.ssdp.rincon_bootseq); - - if(flow->protos.ssdp.rincon_wifimode) - ndpi_free(flow->protos.ssdp.rincon_wifimode); - - if(flow->protos.ssdp.rincon_variant) - ndpi_free(flow->protos.ssdp.rincon_variant); - - if(flow->protos.ssdp.sonos_securelocation) - ndpi_free(flow->protos.ssdp.sonos_securelocation); - if(flow->protos.ssdp.securelocation_upnp) ndpi_free(flow->protos.ssdp.securelocation_upnp); - if(flow->protos.ssdp.location_smart_speaker_audio) - ndpi_free(flow->protos.ssdp.location_smart_speaker_audio); - if(flow->protos.ssdp.nt) ndpi_free(flow->protos.ssdp.nt); @@ -9958,14 +9937,7 @@ static void ndpi_reset_packet_line_info(struct ndpi_packet_struct *packet) { packet->usn.ptr = NULL, packet->usn.len = 0; packet->cache_controle.ptr = NULL, packet->cache_controle.len = 0; packet->location.ptr = NULL, packet->location.len = 0; - packet->household_smart_speaker_audio.ptr = NULL, packet->household_smart_speaker_audio.len = 0; - packet->rincon_household.ptr = NULL, packet->rincon_household.len = 0; - packet->rincon_bootseq.ptr = NULL, packet->rincon_bootseq.len = 0; - packet->rincon_wifimode.ptr = NULL, packet->rincon_wifimode.len = 0; - packet->rincon_variant.ptr = NULL, packet->rincon_variant.len = 0; - packet->sonos_securelocation.ptr = NULL, packet->sonos_securelocation.len = 0; packet->securelocation_upnp.ptr = NULL, packet->securelocation_upnp.len = 0; - packet->location_smart_speaker_audio.ptr = NULL, packet->location_smart_speaker_audio.len = 0; packet->nt.ptr = NULL, packet->nt.len = 0; packet->nts.ptr = NULL, packet->nts.len = 0; packet->man.ptr = NULL, packet->man.len = 0; @@ -10790,14 +10762,8 @@ static void parse_single_packet_line(struct ndpi_detection_module_struct *ndpi_s struct header_line headers_o[] = { { "Origin:", &packet->http_origin }, { NULL, NULL} }; struct header_line headers_h[] = { { "Host:", &packet->host_line }, - { "HOUSEHOLD.SMARTSPEAKER.AUDIO:", &packet->household_smart_speaker_audio }, { NULL, NULL} }; struct header_line headers_x[] = { { "X-Forwarded-For:", &packet->forwarded_line }, - { "X-RINCON-HOUSEHOLD:", &packet->rincon_household }, - { "X-RINCON-BOOTSEQ:", &packet->rincon_bootseq }, - { "X-RINCON-WIFIMODE:", &packet->rincon_wifimode }, - { "X-RINCON-VARIANT:", &packet->rincon_variant }, - { "X-SONOS-HHSECURELOCATION:", &packet->sonos_securelocation }, { NULL, NULL} }; struct header_line headers_r[] = { { "Referer:", &packet->referer_line }, { NULL, NULL} }; @@ -10806,7 +10772,6 @@ static void parse_single_packet_line(struct ndpi_detection_module_struct *ndpi_s { "ST", &packet->st }, { NULL, NULL} }; struct header_line headers_l[] = { { "LOCATION:", &packet->location }, - { "LOCATION.SMARTSPEAKER.AUDIO:", &packet->location_smart_speaker_audio }, { NULL, NULL}}; struct header_line headers_m[] = { { "MAN:", &packet->man }, { "MX:", &packet->mx }, diff --git a/src/lib/ndpi_utils.c b/src/lib/ndpi_utils.c index 0a4017c4d..1d7fae826 100644 --- a/src/lib/ndpi_utils.c +++ b/src/lib/ndpi_utils.c @@ -1911,42 +1911,10 @@ int ndpi_dpi2json(struct ndpi_detection_module_struct *ndpi_struct, ndpi_serialize_string_string(serializer, "USN", flow->protos.ssdp.usn); } - if (flow->protos.ssdp.rincon_household) { - ndpi_serialize_string_string(serializer, "X-RINCON-HOUSEHOLD", flow->protos.ssdp.rincon_household); - } - - if (flow->protos.ssdp.rincon_bootseq) { - ndpi_serialize_string_string(serializer, "X-RINCON-BOOTSEQ", flow->protos.ssdp.rincon_bootseq); - } - - if (flow->protos.ssdp.bootid) { - ndpi_serialize_string_string(serializer, "BOOTID.UPNP.ORG", flow->protos.ssdp.bootid); - } - - if (flow->protos.ssdp.rincon_wifimode) { - ndpi_serialize_string_string(serializer, "X-RINCON-WIFIMODE", flow->protos.ssdp.rincon_wifimode); - } - - if (flow->protos.ssdp.rincon_variant) { - ndpi_serialize_string_string(serializer, "X-RINCON-VARIANT", flow->protos.ssdp.rincon_variant); - } - - if (flow->protos.ssdp.household_smart_speaker_audio) { - ndpi_serialize_string_string(serializer, "HOUSEHOLD.SMARTSPEAKER.AUDIO", flow->protos.ssdp.household_smart_speaker_audio); - } - - if (flow->protos.ssdp.location_smart_speaker_audio) { - ndpi_serialize_string_string(serializer, "LOCATION.SMARTSPEAKER.AUDIO", flow->protos.ssdp.location_smart_speaker_audio); - } - if (flow->protos.ssdp.securelocation_upnp) { ndpi_serialize_string_string(serializer, "SECURELOCATION.UPNP.ORG", flow->protos.ssdp.securelocation_upnp); } - if (flow->protos.ssdp.sonos_securelocation) { - ndpi_serialize_string_string(serializer, "X-SONOS-HHSECURELOCATION", flow->protos.ssdp.sonos_securelocation); - } - if (flow->protos.ssdp.man) { ndpi_serialize_string_string(serializer, "MAN", flow->protos.ssdp.man); } diff --git a/src/lib/protocols/ssdp.c b/src/lib/protocols/ssdp.c index ae32034ba..4da4945a5 100644 --- a/src/lib/protocols/ssdp.c +++ b/src/lib/protocols/ssdp.c @@ -89,54 +89,6 @@ static void ssdp_parse_lines(struct ndpi_detection_module_struct } } - if (packet->household_smart_speaker_audio.ptr != NULL && packet->household_smart_speaker_audio.len > 0) { - flow->protos.ssdp.household_smart_speaker_audio = ndpi_malloc(packet->household_smart_speaker_audio.len + 1); - if (flow->protos.ssdp.household_smart_speaker_audio) { - memcpy(flow->protos.ssdp.household_smart_speaker_audio, packet->household_smart_speaker_audio.ptr, packet->household_smart_speaker_audio.len); - flow->protos.ssdp.household_smart_speaker_audio[packet->household_smart_speaker_audio.len] = '\0'; - } - } - - if (packet->rincon_household.ptr != NULL && packet->rincon_household.len > 0) { - flow->protos.ssdp.rincon_household = ndpi_malloc(packet->rincon_household.len + 1); - if (flow->protos.ssdp.rincon_household) { - memcpy(flow->protos.ssdp.rincon_household, packet->rincon_household.ptr, packet->rincon_household.len); - flow->protos.ssdp.rincon_household[packet->rincon_household.len] = '\0'; - } - } - - if (packet->rincon_bootseq.ptr != NULL && packet->rincon_bootseq.len > 0) { - flow->protos.ssdp.rincon_bootseq = ndpi_malloc(packet->rincon_bootseq.len + 1); - if (flow->protos.ssdp.rincon_bootseq) { - memcpy(flow->protos.ssdp.rincon_bootseq, packet->rincon_bootseq.ptr, packet->rincon_bootseq.len); - flow->protos.ssdp.rincon_bootseq[packet->rincon_bootseq.len] = '\0'; - } - } - - if (packet->rincon_wifimode.ptr != NULL && packet->rincon_wifimode.len > 0) { - flow->protos.ssdp.rincon_wifimode = ndpi_malloc(packet->rincon_wifimode.len + 1); - if (flow->protos.ssdp.rincon_wifimode) { - memcpy(flow->protos.ssdp.rincon_wifimode, packet->rincon_wifimode.ptr, packet->rincon_wifimode.len); - flow->protos.ssdp.rincon_wifimode[packet->rincon_wifimode.len] = '\0'; - } - } - - if (packet->rincon_variant.ptr != NULL && packet->rincon_variant.len > 0) { - flow->protos.ssdp.rincon_variant = ndpi_malloc(packet->rincon_variant.len + 1); - if (flow->protos.ssdp.rincon_variant) { - memcpy(flow->protos.ssdp.rincon_variant, packet->rincon_variant.ptr, packet->rincon_variant.len); - flow->protos.ssdp.rincon_variant[packet->rincon_variant.len] = '\0'; - } - } - - if (packet->sonos_securelocation.ptr != NULL && packet->sonos_securelocation.len > 0) { - flow->protos.ssdp.sonos_securelocation = ndpi_malloc(packet->sonos_securelocation.len + 1); - if (flow->protos.ssdp.sonos_securelocation) { - memcpy(flow->protos.ssdp.sonos_securelocation, packet->sonos_securelocation.ptr, packet->sonos_securelocation.len); - flow->protos.ssdp.sonos_securelocation[packet->sonos_securelocation.len] = '\0'; - } - } - if (packet->securelocation_upnp.ptr != NULL && packet->securelocation_upnp.len > 0) { flow->protos.ssdp.securelocation_upnp = ndpi_malloc(packet->securelocation_upnp.len + 1); if (flow->protos.ssdp.securelocation_upnp) { @@ -145,14 +97,6 @@ static void ssdp_parse_lines(struct ndpi_detection_module_struct } } - if (packet->location_smart_speaker_audio.ptr != NULL && packet->location_smart_speaker_audio.len > 0) { - flow->protos.ssdp.location_smart_speaker_audio = ndpi_malloc(packet->location_smart_speaker_audio.len + 1); - if (flow->protos.ssdp.location_smart_speaker_audio) { - memcpy(flow->protos.ssdp.location_smart_speaker_audio, packet->location_smart_speaker_audio.ptr, packet->location_smart_speaker_audio.len); - flow->protos.ssdp.location_smart_speaker_audio[packet->location_smart_speaker_audio.len] = '\0'; - } - } - if (packet->nt.ptr != NULL && packet->nt.len > 0) { flow->protos.ssdp.nt = ndpi_malloc(packet->nt.len + 1); if (flow->protos.ssdp.nt) {