Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef _VMWARE_TOOLS_UTILS_H_
00020 #define _VMWARE_TOOLS_UTILS_H_
00021
00031 #define VMTOOLS_GUEST_SERVICE "vmsvc"
00032 #define VMTOOLS_USER_SERVICE "vmusr"
00033
00034 #if defined(__cplusplus)
00035 # define VMTOOLS_EXTERN_C extern "C"
00036 #else
00037 # define VMTOOLS_EXTERN_C
00038 #endif
00039
00040 #include <glib.h>
00041 #if defined(G_PLATFORM_WIN32)
00042 # include <windows.h>
00043 #else
00044 # include <signal.h>
00045 # include <sys/time.h>
00046 #endif
00047
00048
00049
00050 #if defined(G_PLATFORM_WIN32)
00051 # if defined(G_INLINE_FUNC)
00052 # undef G_INLINE_FUNC
00053 # endif
00054 # define G_INLINE_FUNC static __inline
00055 #endif
00056
00057
00070 #if defined(G_PLATFORM_WIN32)
00071 # define VMTOOLS_GET_FILENAME_LOCAL(path, err) (gchar *) (path)
00072 #else
00073 # define VMTOOLS_GET_FILENAME_LOCAL(path, err) g_filename_from_utf8((path), \
00074 -1, \
00075 NULL, \
00076 NULL, \
00077 (err))
00078 #endif
00079
00086 #if defined(G_PLATFORM_WIN32)
00087 # define VMTOOLS_RELEASE_FILENAME_LOCAL(path) (void) (path)
00088 #else
00089 # define VMTOOLS_RELEASE_FILENAME_LOCAL(path) g_free(path)
00090 #endif
00091
00092 G_BEGIN_DECLS
00093
00094 void
00095 vm_free(void *ptr);
00096
00097 void
00098 VMTools_ConfigLogging(const gchar *defaultDomain,
00099 GKeyFile *cfg,
00100 gboolean force,
00101 gboolean reset);
00102
00103 gboolean
00104 VMTools_LoadConfig(const gchar *path,
00105 GKeyFileFlags flags,
00106 GKeyFile **config,
00107 time_t *mtime);
00108
00109 gboolean
00110 VMTools_WriteConfig(const gchar *path,
00111 GKeyFile *config,
00112 GError **err);
00113
00114 #if defined(G_PLATFORM_WIN32)
00115
00116 gboolean
00117 VMTools_AttachConsole(void);
00118
00119 GSource *
00120 VMTools_NewHandleSource(HANDLE h);
00121
00122 #else
00123
00125 typedef gboolean (*SignalSourceCb)(const siginfo_t *, gpointer);
00126
00127 GSource *
00128 VMTools_NewSignalSource(int signum);
00129
00130 #endif
00131
00132 GArray *
00133 VMTools_WrapArray(gconstpointer data,
00134 guint elemSize,
00135 guint count);
00136
00137 G_END_DECLS
00138
00141 #endif
00142