Stackdb
Stackdb is a stackable, multi-target and -level source debugger and memory forensics library.
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
analysis_rpc.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2012, 2013 The University of Utah
3  *
4  * This program is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU General Public License as
6  * published by the Free Software Foundation; either version 2 of
7  * the License, or (at your option) any later version.
8  *
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  * GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License
15  * along with this program; if not, write to the Free Software
16  * Foundation, 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
17  */
18 
19 #ifndef __ANALYSIS_RPC_H__
20 #define __ANALYSIS_RPC_H__
21 
22 #include "analysis_rpc_moduleStub.h"
23 
24 /*
25  * Targets as XML SOAP server-monitored objects.
26  */
27 #define MONITOR_OBJTYPE_ANALYSIS 0x09
29 
30 void analysis_rpc_init(void);
31 void analysis_rpc_fini(void);
32 
33 int analysis_rpc_handle_request(struct soap *soap);
34 
35 
36 int vmi1__ListAnalysisDescNames(struct soap *soap,
37  void *_,
39 
40 int vmi1__ListAnalysisDescs(struct soap *soap,
41  void *_,
42  struct vmi1__AnalysisDescsResponse *r);
43 
44 int vmi1__ListAnalyses(struct soap *soap,
45  void *_,
46  struct vmi1__AnalysesResponse *r);
47 
48 int vmi1__UploadAnalysis(struct soap *soap,
49  struct vmi1__AnalysisDescT *analysisDesc,
50  struct xsd__hexBinary *inputFileContents,
51  struct vmi1__NoneResponse *r);
52 
53 int vmi1__InstantiateAnalysis(struct soap *soap,
54  struct vmi1__AnalysisSpecT *analysisSpec,
55  struct vmi1__TargetSpecT *targetSpec,
56  struct vmi1__ListenerT *ownerListener,
57  struct vmi1__AnalysisResponse *r);
58 
59 int vmi1__InstantiateOverlayAnalysis(struct soap *soap,
60  struct vmi1__AnalysisSpecT *analysisSpec,
61  struct vmi1__TargetSpecT *targetSpec,
62  struct vmi1__TargetSpecT *overlayTargetSpec,
63  vmi1__ThreadIdT baseThid,
64  vmi1__ListenerT *ownerListener,
65  struct vmi1__AnalysisResponse *r);
66 
68  struct vmi1__AnalysisSpecT *analysisSpec,
69  struct vmi1__TargetSpecT *targetSpec,
70  struct vmi1__TargetSpecT *overlayTargetSpec,
71  char *baseThreadName,
72  vmi1__ListenerT *ownerListener,
73  struct vmi1__AnalysisResponse *r);
74 
75 int vmi1__PauseAnalysis(struct soap *soap,
76  vmi1__AnalysisIdT aid,
77  struct vmi1__NoneResponse *r);
78 
79 int vmi1__ResumeAnalysis(struct soap *soap,
80  vmi1__AnalysisIdT aid,
81  struct vmi1__NoneResponse *r);
82 
83 int vmi1__CloseAnalysis(struct soap *soap,
84  vmi1__AnalysisIdT aid,
85  struct vmi1__NoneResponse *r);
86 int vmi1__KillAnalysis(struct soap *soap,
87  vmi1__AnalysisIdT aid,int kill_sig,
88  struct vmi1__NoneResponse *r);
89 int vmi1__FinalizeAnalysis(struct soap *soap,
90  vmi1__AnalysisIdT aid,
91  struct vmi1__NoneResponse *r);
92 
93 int vmi1__GetAnalysis(struct soap *soap,
94  vmi1__AnalysisIdT aid,
95  struct vmi1__AnalysisResponse *r);
96 
97 int vmi1__GetAnalysisStatus(struct soap *soap,
98  vmi1__AnalysisIdT aid,
100 
101 int vmi1__GetAnalysisResults(struct soap *soap,
102  vmi1__AnalysisIdT aid,
104 
105 int vmi1__AnalysisBindListener(struct soap *soap,
106  vmi1__AnalysisIdT aid,vmi1__ListenerT *listener,
107  struct vmi1__NoneResponse *r);
108 int vmi1__AnalysisUnbindListener(struct soap *soap,
109  vmi1__AnalysisIdT tid,vmi1__ListenerT *listener,
110  struct vmi1__NoneResponse *r);
111 #endif /* __ANALYSIS_RPC_H__ */
int vmi1__GetAnalysisStatus(struct soap *soap, vmi1__AnalysisIdT aid, struct vmi1__AnalysisStatusResponse *r)
int vmi1__KillAnalysis(struct soap *soap, vmi1__AnalysisIdT aid, int kill_sig, struct vmi1__NoneResponse *r)
int vmi1__InstantiateOverlayAnalysisByThreadName(struct soap *soap, struct vmi1__AnalysisSpecT *analysisSpec, struct vmi1__TargetSpecT *targetSpec, struct vmi1__TargetSpecT *overlayTargetSpec, char *baseThreadName, vmi1__ListenerT *ownerListener, struct vmi1__AnalysisResponse *r)
int vmi1__GetAnalysis(struct soap *soap, vmi1__AnalysisIdT aid, struct vmi1__AnalysisResponse *r)
int vmi1__AnalysisUnbindListener(struct soap *soap, vmi1__AnalysisIdT tid, vmi1__ListenerT *listener, struct vmi1__NoneResponse *r)
int vmi1__InstantiateOverlayAnalysis(struct soap *soap, struct vmi1__AnalysisSpecT *analysisSpec, struct vmi1__TargetSpecT *targetSpec, struct vmi1__TargetSpecT *overlayTargetSpec, vmi1__ThreadIdT baseThid, vmi1__ListenerT *ownerListener, struct vmi1__AnalysisResponse *r)
int vmi1__ResumeAnalysis(struct soap *soap, vmi1__AnalysisIdT aid, struct vmi1__NoneResponse *r)
int vmi1__ListAnalysisDescNames(struct soap *soap, void *_, struct vmi1__AnalysisDescNamesResponse *r)
Definition: analysis_rpc.c:629
int vmi1__AnalysisBindListener(struct soap *soap, vmi1__AnalysisIdT aid, vmi1__ListenerT *listener, struct vmi1__NoneResponse *r)
int vmi1__FinalizeAnalysis(struct soap *soap, vmi1__AnalysisIdT aid, struct vmi1__NoneResponse *r)
void analysis_rpc_fini(void)
Definition: analysis_rpc.c:110
int vmi1__PauseAnalysis(struct soap *soap, vmi1__AnalysisIdT aid, struct vmi1__NoneResponse *r)
int analysis_rpc_handle_request(struct soap *soap)
Definition: analysis_rpc.c:159
int vmi1__ListAnalysisDescs(struct soap *soap, void *_, struct vmi1__AnalysisDescsResponse *r)
Definition: analysis_rpc.c:654
int vmi1__CloseAnalysis(struct soap *soap, vmi1__AnalysisIdT aid, struct vmi1__NoneResponse *r)
int vmi1__ListAnalyses(struct soap *soap, void *_, struct vmi1__AnalysesResponse *r)
Definition: analysis_rpc.c:684
void analysis_rpc_init(void)
Definition: analysis_rpc.c:86
int vmi1__UploadAnalysis(struct soap *soap, struct vmi1__AnalysisDescT *analysisDesc, struct xsd__hexBinary *inputFileContents, struct vmi1__NoneResponse *r)
Definition: analysis_rpc.c:715
int vmi1__InstantiateAnalysis(struct soap *soap, struct vmi1__AnalysisSpecT *analysisSpec, struct vmi1__TargetSpecT *targetSpec, struct vmi1__ListenerT *ownerListener, struct vmi1__AnalysisResponse *r)
Definition: analysis_rpc.c:722
int vmi1__GetAnalysisResults(struct soap *soap, vmi1__AnalysisIdT aid, struct vmi1__AnalysisResultsResponse *r)
struct monitor_objtype_ops analysis_rpc_monitor_objtype_ops
Definition: analysis_rpc.c:70