Removed device-specific ssdp fields (#3109)

This commit is contained in:
Ivan Kapranov 2026-02-05 16:13:01 +03:00 committed by GitHub
parent 6606b35c6e
commit 766ec15036
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 0 additions and 123 deletions

View file

@ -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 },

View file

@ -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);
}

View file

@ -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) {