aboutsummaryrefslogtreecommitdiff
path: root/src/lib/protocols/hangout.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/protocols/hangout.c')
-rw-r--r--src/lib/protocols/hangout.c23
1 files changed, 15 insertions, 8 deletions
diff --git a/src/lib/protocols/hangout.c b/src/lib/protocols/hangout.c
index ca53a8814..de35653ea 100644
--- a/src/lib/protocols/hangout.c
+++ b/src/lib/protocols/hangout.c
@@ -17,9 +17,15 @@
* If not, see <http://www.gnu.org/licenses/>.
*
*/
+
+#include "ndpi_protocol_ids.h"
+
+#ifdef NDPI_PROTOCOL_HANGOUT
+
+#define NDPI_CURRENT_PROTO NDPI_PROTOCOL_HANGOUT
+
#include "ndpi_api.h"
-#ifdef NDPI_SERVICE_HANGOUT
/* https://support.google.com/a/answer/1279090?hl=en */
#define HANGOUT_UDP_LOW_PORT 19302
@@ -48,7 +54,7 @@ static u_int8_t isHangoutTCPPort(u_int16_t port) {
/* ******************************************* */
static u_int8_t google_ptree_match(struct ndpi_detection_module_struct *ndpi_struct, struct in_addr *pin) {
- return((ndpi_network_ptree_match(ndpi_struct, pin) == NDPI_SERVICE_GOOGLE) ? 1 : 0);
+ return((ndpi_network_ptree_match(ndpi_struct, pin) == NDPI_PROTOCOL_GOOGLE) ? 1 : 0);
}
/* ******************************************* */
@@ -73,19 +79,20 @@ void ndpi_search_hangout(struct ndpi_detection_module_struct *ndpi_struct,
struct ndpi_flow_struct *flow) {
struct ndpi_packet_struct * packet = &flow->packet;
+ NDPI_LOG_DBG(ndpi_struct, "search Hangout\n");
+
if((packet->payload_packet_len > 24) && is_google_flow(ndpi_struct, flow)) {
if(
((packet->udp != NULL) && (isHangoutUDPPort(ntohs(packet->udp->source)) || isHangoutUDPPort(ntohs(packet->udp->dest))))
||
((packet->tcp != NULL) && (isHangoutTCPPort(ntohs(packet->tcp->source)) || isHangoutTCPPort(ntohs(packet->tcp->dest))))) {
- NDPI_LOG(NDPI_SERVICE_HANGOUT, ndpi_struct, NDPI_LOG_DEBUG, "Found Hangout.\n");
- ndpi_set_detected_protocol(ndpi_struct, flow, NDPI_SERVICE_HANGOUT, NDPI_PROTOCOL_UNKNOWN);
+ NDPI_LOG_INFO(ndpi_struct, "found Hangout\n");
+ ndpi_set_detected_protocol(ndpi_struct, flow, NDPI_PROTOCOL_HANGOUT, NDPI_PROTOCOL_UNKNOWN);
return;
}
}
- NDPI_LOG(NDPI_SERVICE_HANGOUT, ndpi_struct, NDPI_LOG_DEBUG, "No Hangout.\n");
- NDPI_ADD_PROTOCOL_TO_BITMASK(flow->excluded_protocol_bitmask, NDPI_SERVICE_HANGOUT);
+ NDPI_EXCLUDE_PROTO(ndpi_struct, flow);
}
/* ***************************************************************** */
@@ -93,7 +100,7 @@ void ndpi_search_hangout(struct ndpi_detection_module_struct *ndpi_struct,
void init_hangout_dissector(struct ndpi_detection_module_struct *ndpi_struct, u_int32_t *id,
NDPI_PROTOCOL_BITMASK *detection_bitmask) {
ndpi_set_bitmask_protocol_detection("GoogleHangout", ndpi_struct, detection_bitmask, *id,
- NDPI_SERVICE_HANGOUT,
+ NDPI_PROTOCOL_HANGOUT,
ndpi_search_hangout,
NDPI_SELECTION_BITMASK_PROTOCOL_TCP_OR_UDP,
SAVE_DETECTION_BITMASK_AS_UNKNOWN,
@@ -102,4 +109,4 @@ void init_hangout_dissector(struct ndpi_detection_module_struct *ndpi_struct, u_
*id += 1;
}
-#endif /* NDPI_SERVICE_HANGOUT */
+#endif /* NDPI_PROTOCOL_HANGOUT */