1 #ifndef XENDEVICEMODEL_PRIVATE_H
2 #define XENDEVICEMODEL_PRIVATE_H
3 
4 #define __XEN_TOOLS__ 1
5 
6 #include <xentoollog.h>
7 #include <xendevicemodel.h>
8 #include <xencall.h>
9 
10 #include <xentoolcore_internal.h>
11 
12 struct xendevicemodel_handle {
13     xentoollog_logger *logger, *logger_tofree;
14     unsigned int flags;
15     xencall_handle *xcall;
16     int fd;
17     Xentoolcore__Active_Handle tc_ah;
18 };
19 
20 struct xendevicemodel_buf {
21     void *ptr;
22     size_t size;
23 };
24 
25 int xendevicemodel_xcall(xendevicemodel_handle *dmod,
26                          domid_t domid, unsigned int nr_bufs,
27                          struct xendevicemodel_buf bufs[]);
28 
29 int osdep_xendevicemodel_open(xendevicemodel_handle *dmod);
30 int osdep_xendevicemodel_close(xendevicemodel_handle *dmod);
31 int osdep_xendevicemodel_op(xendevicemodel_handle *dmod,
32                             domid_t domid, unsigned int nr_bufs,
33                             struct xendevicemodel_buf bufs[]);
34 
35 int osdep_xendevicemodel_restrict(
36     xendevicemodel_handle *dmod, domid_t domid);
37 
38 #define PERROR(_f...) \
39     xtl_log(dmod->logger, XTL_ERROR, errno, "xendevicemodel", _f)
40 
41 #endif
42 
43 /*
44  * Local variables:
45  * mode: C
46  * c-file-style: "BSD"
47  * c-basic-offset: 4
48  * tab-width: 4
49  * indent-tabs-mode: nil
50  * End:
51  */
52