14b1addaeSSasha Levin #ifndef KVM__IPC_H_ 24b1addaeSSasha Levin #define KVM__IPC_H_ 34b1addaeSSasha Levin 44b1addaeSSasha Levin #include <linux/types.h> 54b1addaeSSasha Levin 64b1addaeSSasha Levin struct kvm_ipc_msg { 74b1addaeSSasha Levin u32 type; 84b1addaeSSasha Levin u32 len; 94b1addaeSSasha Levin u8 data[]; 104b1addaeSSasha Levin }; 114b1addaeSSasha Levin 124b1addaeSSasha Levin enum { 134b1addaeSSasha Levin KVM_IPC_BALLOON = 1, 144b1addaeSSasha Levin KVM_IPC_DEBUG = 2, 154b1addaeSSasha Levin KVM_IPC_STAT = 3, 164b1addaeSSasha Levin KVM_IPC_PAUSE = 4, 174b1addaeSSasha Levin KVM_IPC_RESUME = 5, 184b1addaeSSasha Levin KVM_IPC_STOP = 6, 194b1addaeSSasha Levin KVM_IPC_PID = 7, 204b1addaeSSasha Levin }; 214b1addaeSSasha Levin 224b1addaeSSasha Levin int kvm_ipc__register_handler(u32 type, void (*cb)(int fd, u32 type, u32 len, u8 *msg)); 234b1addaeSSasha Levin int kvm_ipc__handle(int fd, struct kvm_ipc_msg *msg); 244b1addaeSSasha Levin int kvm_ipc__start(int sock); 25*c733c80bSSasha Levin int kvm_ipc__stop(void); 264b1addaeSSasha Levin 274b1addaeSSasha Levin #endif 28