]> git.ipfire.org Git - thirdparty/snort3.git/commit
Merge pull request #722 in SNORT/snort3 from appid_stl_thread_safety to master
authorRuss Combs (rucombs) <rucombs@cisco.com>
Wed, 23 Nov 2016 21:24:58 +0000 (16:24 -0500)
committerRuss Combs (rucombs) <rucombs@cisco.com>
Wed, 23 Nov 2016 21:24:58 +0000 (16:24 -0500)
commit20bf27cf1d5492fe2183a909bd35db2428cdf7fc
tree608a73824b658c2ae11471309f2bc04baaba9b26
parent570c41b29daf9bcd7a34d180d63d79283a3d3a8d
Merge pull request #722 in SNORT/snort3 from appid_stl_thread_safety to master

Squashed commit of the following:

commit 991eb29ae7f85b1e9e1b72f334eb96536c568b10
Author: davis mcpherson <davmcphe.cisco.com>
Date:   Wed Nov 23 14:09:00 2016 -0500

    use std::lock_guard to manage life cycle of mutex ownership when accessing app info tables.

commit a09a573489bf2b69930b6aa58006699fd3ab0681
Author: davis mcpherson <davmcphe.cisco.com>
Date:   Wed Nov 23 10:33:49 2016 -0500

    add lock around read accesses to app info tables.  there is a single lock that is global to all app info tables, more granular locking on a per table basis may be implemented in the future to improve performance

    remove caching AppIdServiceIDState object pointers in the AppIdSession object.  The service state object may get deleted without the knowledge of appid sessions that have cached the pointer.  For now a get using the ip/port/protocol tuple of the destination is used to get the service state object.  This is short term solution until a move to the host cache can be implemented.
src/network_inspectors/appid/app_info_table.cc
src/network_inspectors/appid/app_info_table.h
src/network_inspectors/appid/appid_session.cc
src/network_inspectors/appid/appid_session.h
src/network_inspectors/appid/service_plugins/service_base.cc
src/network_inspectors/appid/service_plugins/service_base.h