diff options
author | Nardi Ivan <nardi.ivan@gmail.com> | 2022-09-09 20:17:17 +0200 |
---|---|---|
committer | Toni <matzeton@googlemail.com> | 2022-09-11 13:33:32 +0200 |
commit | 678dd61866944eae011fa96f1c6d39d0c201858e (patch) | |
tree | 1de68b205c17a5753869bae6a536615ca9be9a34 /src/lib/protocols/hangout.c | |
parent | f44413e039ed65dca73606ff01d7e3ab8a1ca2bb (diff) |
STUN: several improvements
Add detection over TCP and fix detection over IPv6.
Rename some variables since Stun dissector is no more "udp-centric".
Stun dissector should always classified the flow as `STUN` or
`STUN/Something`.
Don't touch `flow->guessed_host_protocol_id` field, which should be
always be related to "ip-classification" only.
Diffstat (limited to 'src/lib/protocols/hangout.c')
-rw-r--r-- | src/lib/protocols/hangout.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/lib/protocols/hangout.c b/src/lib/protocols/hangout.c index 3c463bbc6..7f5414ef0 100644 --- a/src/lib/protocols/hangout.c +++ b/src/lib/protocols/hangout.c @@ -27,7 +27,7 @@ #include "ndpi_api.h" /* stun.c */ -extern u_int32_t get_stun_lru_key(struct ndpi_packet_struct *packet, u_int8_t rev); +extern u_int32_t get_stun_lru_key(struct ndpi_flow_struct *flow, u_int8_t rev); /* https://support.google.com/a/answer/1279090?hl=en */ #define HANGOUT_UDP_LOW_PORT 19302 @@ -101,8 +101,8 @@ void ndpi_search_hangout(struct ndpi_detection_module_struct *ndpi_struct, if(ndpi_struct->stun_cache == NULL) ndpi_struct->stun_cache = ndpi_lru_cache_init(1024); - if(ndpi_struct->stun_cache && packet->iph && packet->udp) { - u_int32_t key = get_stun_lru_key(packet, !matched_src); + if(ndpi_struct->stun_cache && packet->iph) { + u_int32_t key = get_stun_lru_key(flow, !matched_src); #ifdef DEBUG_LRU printf("[LRU] ADDING %u / %u.%u\n", key, NDPI_PROTOCOL_STUN, NDPI_PROTOCOL_HANGOUT_DUO); |