URL: https://code.wireshark.org/review/gitweb?p=wireshark.git;a=commit;h=6d9bc4bd653b8e7c6a9509f7944f26badfb47386
Submitter: "Anders Broman <a.broman58@xxxxxxxxx>"
Changed: branch: master
Repository: wireshark
Commits:
6d9bc4b by Peter Wu (peter@xxxxxxxxxxxxx):
extcap: discover interfaces in a parallel
Split interface discovery in three stages: discover available programs
(extcap_get_extcap_paths), obtain outputs for each (extcap_run_all) and
processing of the output (process_new_extcap). The second step is most
expensive, do it in parallel in multiple threads.
extcap_foreach used to call extcap_if_exists, but as "cb_info.ifname" is
always NULL for interface discovery, it would always pass. Remove this
check and all other unused functions.
This saves 100ms startup time on Linux with 7 extcap tools.
Change-Id: I511e491d3b23c0a7f2fe2447842e87a9bd75adbe
Ping-Bug: 15295
Reviewed-on: https://code.wireshark.org/review/30766
Petri-Dish: Peter Wu <peter@xxxxxxxxxxxxx>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@xxxxxxxxx>
Actions performed:
from 73ded3a extcap: simplify execution of single extcap programs
add 6d9bc4b extcap: discover interfaces in a parallel
Summary of changes:
extcap.c | 234 +++++++++++++++++++++++++++++----------------------------------
extcap.h | 4 --
2 files changed, 106 insertions(+), 132 deletions(-)