open-vm-tools 12.4.0
Data Structures | Macros | Typedefs | Enumerations
plugin.h File Reference
#include <glib.h>
#include "vmware/guestrpc/capabilities.h"
#include "vmware/tools/guestrpc.h"
#include "vmware/tools/utils.h"
Include dependency graph for plugin.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  ToolsAppCtx
 
struct  ToolsAppCapability
 
struct  ToolsAppProvider
 
struct  ToolsAppReg
 
struct  ToolsServiceProperty
 
struct  ToolsPluginSignalCb
 
struct  ToolsPluginData
 

Macros

#define VMTOOLSAPP_ERROR(ctx, err)
 
#define VMTOOLSAPP_ATTACH_SOURCE(ctx, src, cb, data, destroy)
 
#define TOOLS_IS_MAIN_SERVICE(ctx)
 
#define TOOLS_IS_USER_SERVICE(ctx)
 
#define TOOLS_STATE_LOG_ROOT   0
 
#define TOOLS_STATE_LOG_CONTAINER   1
 
#define TOOLS_STATE_LOG_PLUGIN   2
 
#define TOOLS_CORE_SIG_CAPABILITIES   "tcs_capabilities"
 
#define TOOLS_CORE_SIG_CONF_RELOAD   "tcs_conf_reload"
 
#define TOOLS_CORE_SIG_DUMP_STATE   "tcs_dump_state"
 
#define TOOLS_CORE_SIG_RESET   "tcs_reset"
 
#define TOOLS_CORE_SIG_NO_RPC   "tcs_no_rpc"
 
#define TOOLS_CORE_SIG_SET_OPTION   "tcs_set_option"
 
#define TOOLS_CORE_SIG_SHUTDOWN   "tcs_shutdown"
 
#define TOOLS_CORE_PROP_CTX   "tcs_app_ctx"
 Property where the container's ToolsAppCtx is stored. More...
 
#define TOOLS_CORE_EVENTS_TOOLS_NEW_VERSION   "VMToolsNewVersion"
 
#define TOOLS_CORE_EVENTS_TOOLS_NEED_REBOOT   "VMToolsNeedReboot"
 
#define TOOLS_CORE_EVENTS_GLOBAL_SCOPE   "Global"
 
#define TOOLS_MODULE_EXPORT   VMTOOLS_EXTERN_C
 

Typedefs

typedef void(* RegisterServiceProperty) (gpointer obj, struct ToolsServiceProperty *prop)
 
typedef struct ToolsAppCtx ToolsAppCtx
 
typedef struct ToolsAppCapability ToolsAppCapability
 
typedef struct ToolsAppProvider ToolsAppProvider
 
typedef struct ToolsAppReg ToolsAppReg
 
typedef struct ToolsServiceProperty ToolsServiceProperty
 
typedef struct ToolsPluginSignalCb ToolsPluginSignalCb
 
typedef struct ToolsPluginData ToolsPluginData
 
typedef ToolsPluginData *(* ToolsPluginOnLoad) (ToolsAppCtx *ctx)
 

Enumerations

enum  ToolsCoreAPI { TOOLS_CORE_API_V1 = 0x1 }
 
enum  ToolsCapabilityType { TOOLS_CAP_OLD = 0 , TOOLS_CAP_OLD_NOVAL = 1 , TOOLS_CAP_NEW = 2 }
 
enum  ToolsAppType { TOOLS_APP_GUESTRPC = 1 , TOOLS_APP_SIGNALS = 2 , TOOLS_APP_PROVIDER = 3 , TOOLS_SVC_PROPERTY = 4 }
 

Detailed Description

Defines the interface between the core tools services and the plugins that are dynamically loaded into the service.