]> git.ipfire.org Git - thirdparty/open-vm-tools.git/commitdiff
Tools Windows Drivers: split header for reporting versions
authorOliver Kurth <okurth@vmware.com>
Fri, 26 Oct 2018 17:44:59 +0000 (10:44 -0700)
committerOliver Kurth <okurth@vmware.com>
Fri, 26 Oct 2018 17:44:59 +0000 (10:44 -0700)
The rpcvmx.h header file has been split to allow some tools drivers to
report their versions to the VMX while limiting the number of RPC APIs that are exposed to the drivers like VMCI and Csock.

open-vm-tools/lib/include/rpcvmx.h
open-vm-tools/lib/include/rpcvmxext.h [new file with mode: 0644]

index 38a8cc68173a079dd7f2d05bf7bb13293456cdec..4b87ebba85446776af2971cec57036352142a772 100644 (file)
@@ -34,6 +34,7 @@
 #include <stdarg.h>
 
 #include "vm_basic_types.h"
+#include "rpcvmxext.h"
 
 #define RPCVMX_MAX_LOG_LEN          (2048) /* 2kb max - make it dynamic? */
 
@@ -47,12 +48,6 @@ void RpcVMX_LogSetPrefix(const char *prefix);
  */
 const char *RpcVMX_LogGetPrefix(const char *prefix);
 
-/*
- * Format the provided string with the provided arguments, and post it to the
- * VMX logfile via RPC.
- */
-void RpcVMX_Log(const char *fmt, ...) PRINTF_DECL(1, 2);
-
 /*
  * Save as RpcVMX_Log but takes a va_list instead of inline arguments.
  */
@@ -77,11 +72,5 @@ int32 RpcVMX_ConfigGetLong(int32 defval, const char *key);
  */
 Bool RpcVMX_ConfigGetBool(Bool defval, const char *key);
 
-/*
- * Report driver name and driver version to vmx to store the key-value in
- * GuestVars, and write a log in vmware.log using RpcVMX_Log.
- */
-void RpcVMX_ReportDriverVersion(const char *drivername, const char *versionString);
-
 #endif /* _VMXRPC_H_ */
 
diff --git a/open-vm-tools/lib/include/rpcvmxext.h b/open-vm-tools/lib/include/rpcvmxext.h
new file mode 100644 (file)
index 0000000..be5b239
--- /dev/null
@@ -0,0 +1,49 @@
+/*********************************************************
+ * Copyright (C) 2018 VMware, Inc. All rights reserved.
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as published
+ * by the Free Software Foundation version 2.1 and no later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ * or FITNESS FOR A PARTICULAR PURPOSE.  See the Lesser GNU General Public
+ * License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA.
+ *
+ *********************************************************/
+
+/*
+ * rpcvmxext.h --
+ *
+ *      Extension of the utility library (usable by guest drivers as well as userlevel
+ *      Tools code) that provides some useful VMX interaction capability, e.g.
+ *      logging to the VM's VMX log, querying config variables, etc.
+ *
+ *      NB: This library is *NOT* threadsafe, so if you want to avoid
+ *          corrupting your log statements or other screwups, add your own
+ *          locking around calls to RpcVMX_Log.
+ */
+
+#ifndef _RPCVMXEXT_H_
+#define _RPCVMXEXT_H_
+
+#include "vm_basic_types.h"
+
+/*
+ * Format the provided string with the provided arguments, and post it to the
+ * VMX logfile via RPC.
+ */
+void RpcVMX_Log(const char *fmt, ...) PRINTF_DECL(1, 2);
+
+/*
+ * Report driver name and driver version to vmx to store the key-value in
+ * GuestVars, and write a log in vmware.log using RpcVMX_Log.
+ */
+void RpcVMX_ReportDriverVersion(const char *drivername, const char *versionString);
+
+#endif /* _RPCVMXEXT_H_ */
+