root/capture-mod/trunk/CaptureSoapServer.h

Revision 1816, 1.7 kB (checked in by mbriggs, 3 months ago)

Changed SOAP Server to reflect database app

  • Property svn:executable set to *
Line 
1 /*
2 **Created by Xeno Kovah of the MITRE HoneyClient Project 5/20/2008
3 */
4
5 #pragma once
6 #include "CaptureGlobal.h" //This needs to be first, due to a macro it defines
7 #include "Visitor.h"
8 #include "RegistryMonitor.h"
9 #include "FileMonitor.h"
10 #include "ProcessMonitor.h"
11
12 using namespace std;
13 using namespace boost;
14
15 //While we could put typedefs in the definition, they don't follow through to the auto-generated
16 //soap files. Therefore you would have to include captureGSOAP.h, but that would cause double definitions
17 typedef struct ns__regkey ns__regkey_t;
18 typedef struct ns__processFile ns__processFile_t;
19 typedef struct ns__osProcess ns__osProcess_t;
20
21 class CaptureSoapServer : public Runnable
22 {
23 public:
24     typedef boost::signal<void (DWORD, DWORD, wstring, wstring)> signal_visitEvent;
25     boost::signals::connection onRegistryEventConnection;
26     boost::signals::connection onFileEventConnection;
27     boost::signals::connection onProcessEventConnection;
28
29     CaptureSoapServer(Visitor *, RegistryMonitor * r, FileMonitor * f, ProcessMonitor * p);
30     ~CaptureSoapServer();
31     void run();
32     void onRegistryEvent(wstring registryEventType, wstring time, wstring processPath,
33                         wstring registryEventPath, vector<wstring> extra);
34     void onFileEvent(wstring fileEventType, wstring time, wstring processPath, wstring fileEventPath,
35                         vector<wstring> extra);
36     void onProcessEvent(BOOLEAN created, wstring time, DWORD parentProcessId, wstring parentProcess,
37                         DWORD processId, wstring process);
38
39     Thread * CaptureSoapServerThread;
40     static Visitor * myVisitor;
41     RegistryMonitor* registryMonitor;
42     FileMonitor * fileMonitor;
43     ProcessMonitor * processMonitor;
44
45 };
Note: See TracBrowser for help on using the browser.