Index: sandbox/src/broker_services.h |
=================================================================== |
--- sandbox/src/broker_services.h (revision 129865) |
+++ sandbox/src/broker_services.h (working copy) |
@@ -6,6 +6,7 @@ |
#define SANDBOX_SRC_BROKER_SERVICES_H__ |
#include <list> |
+#include <set> |
#include "base/basictypes.h" |
#include "sandbox/src/crosscall_server.h" |
#include "sandbox/src/job.h" |
@@ -32,7 +33,7 @@ |
~BrokerServicesBase(); |
- // The next four methods are the BrokerServices interface |
+ // The next five methods are the BrokerServices interface |
virtual ResultCode Init(); |
virtual TargetPolicy* CreatePolicy(); |
@@ -44,6 +45,12 @@ |
virtual ResultCode WaitForAllTargets(); |
+ // Checks if the supplied process ID matches one of the broker's active |
+ // target processes |
+ // Returns: |
+ // true if there is an active target process for this ID, otherwise false. |
+ bool IsActiveTarget(DWORD process_id); |
+ |
private: |
// Helper structure that allows the Broker to associate a job notification |
// with a job object and with a policy. |
@@ -85,6 +92,9 @@ |
typedef std::list<JobTracker*> JobTrackerList; |
JobTrackerList tracker_list_; |
+ // Provides a fast lookup to identify sandboxed processes. |
+ std::set<DWORD> child_process_ids_; |
+ |
DISALLOW_COPY_AND_ASSIGN(BrokerServicesBase); |
}; |