/* This file is auto-generated from ../src/lxc/lxc_monitor_protocol.x */

#include <rpc/rpc.h>
#include "internal.h"

#pragma once

#include "virxdrdefs.h"

enum virLXCMonitorExitStatus {
    VIR_LXC_MONITOR_EXIT_STATUS_ERROR = 0,
    VIR_LXC_MONITOR_EXIT_STATUS_SHUTDOWN = 1,
    VIR_LXC_MONITOR_EXIT_STATUS_REBOOT = 2,
};
typedef enum virLXCMonitorExitStatus virLXCMonitorExitStatus;

struct virLXCMonitorExitEventMsg {
    virLXCMonitorExitStatus status;
};
typedef struct virLXCMonitorExitEventMsg virLXCMonitorExitEventMsg;
void xdr_virLXCMonitorExitEventMsg_clear(virLXCMonitorExitEventMsg *objp);
G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC(virLXCMonitorExitEventMsg, xdr_virLXCMonitorExitEventMsg_clear);

struct virLXCMonitorInitEventMsg {
    uint64_t initpid;
};
typedef struct virLXCMonitorInitEventMsg virLXCMonitorInitEventMsg;
void xdr_virLXCMonitorInitEventMsg_clear(virLXCMonitorInitEventMsg *objp);
G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC(virLXCMonitorInitEventMsg, xdr_virLXCMonitorInitEventMsg_clear);

#define VIR_LXC_MONITOR_PROGRAM 0x12341234

#define VIR_LXC_MONITOR_PROGRAM_VERSION 1

enum virLXCMonitorProcedure {
    VIR_LXC_MONITOR_PROC_EXIT_EVENT = 1,
    VIR_LXC_MONITOR_PROC_INIT_EVENT = 2,
};
typedef enum virLXCMonitorProcedure virLXCMonitorProcedure;

extern  bool_t xdr_virLXCMonitorExitStatus(XDR *, virLXCMonitorExitStatus*);

extern  bool_t xdr_virLXCMonitorExitEventMsg(XDR *, virLXCMonitorExitEventMsg*);

extern  bool_t xdr_virLXCMonitorInitEventMsg(XDR *, virLXCMonitorInitEventMsg*);

extern  bool_t xdr_virLXCMonitorProcedure(XDR *, virLXCMonitorProcedure*);

