diff options
author | Jakub Zawadzki <darkjames-ws@darkjames.pl> | 2018-05-04 20:38:19 +0200 |
---|---|---|
committer | Jakub Zawadzki <darkjames-ws@darkjames.pl> | 2018-05-06 09:22:25 +0000 |
commit | 5cdff2610799c8f02f671d1aa7d4ec481d9139be (patch) | |
tree | 871ec4a55fb9ca0411f479cf80f6177c3a31931d /sharkd_session.c | |
parent | a834d3794d51253df92db196b61ab59b608e0b87 (diff) |
sharkd: support for MaxMindDB.
Call maxmind_db_lookup_process() [via host_name_lookup_process()] before processing request.
It's still buggy, webshark needs a refresh to show endpoint or conversation ipmap,
but it's better than nothing.
It seems to need refresh, cause maxmind_db_lookup_ipv[46] works only for cached entries.
Also cause mmdbresolve is pipe-based, every sharkd need to have it own mmdbresolve process.
Change-Id: I3d588d1fa9e9ba645cc3d0bff3d276b202159d21
Reviewed-on: https://code.wireshark.org/review/27335
Petri-Dish: Jakub Zawadzki <darkjames-ws@darkjames.pl>
Tested-by: Petri Dish Buildbot
Reviewed-by: Jakub Zawadzki <darkjames-ws@darkjames.pl>
Diffstat (limited to 'sharkd_session.c')
-rw-r--r-- | sharkd_session.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/sharkd_session.c b/sharkd_session.c index bffacf4b3e..96d09cdf8a 100644 --- a/sharkd_session.c +++ b/sharkd_session.c @@ -4003,6 +4003,11 @@ sharkd_session_main(void) filter_table = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, sharkd_session_filter_free); +#ifdef HAVE_MAXMINDDB + /* mmdbresolve was stopped before fork(), force starting it */ + uat_get_table_by_name("MaxMind Database Paths")->post_update_cb(); +#endif + while (fgets(buf, sizeof(buf), stdin)) { /* every command is line seperated JSON */ @@ -4033,6 +4038,10 @@ sharkd_session_main(void) return 2; } +#if defined(HAVE_C_ARES) || defined(HAVE_MAXMINDDB) + host_name_lookup_process(); +#endif + sharkd_session_process(buf, tokens, ret); } |