forked from rpms/open-vm-tools
Package new upstream version open-vm-tools-11.3.0-18090558.
Add vmware-alias-import, vmwgfxctrl, libgdp.so, libguestStore.so and libguestStoreClient.so.*. Remove open-vm-tools-fix-kms-autodetection.patch, open-vm-tools-gcc11.patch and open-vm-tools-gdk-glib.patch as no longer needed.
This commit is contained in:
parent
0c2a7d5077
commit
856034515f
1
.gitignore
vendored
1
.gitignore
vendored
@ -20,3 +20,4 @@
|
|||||||
/open-vm-tools-11.1.5-16724464.tar.gz
|
/open-vm-tools-11.1.5-16724464.tar.gz
|
||||||
/open-vm-tools-11.2.0-16938113.tar.gz
|
/open-vm-tools-11.2.0-16938113.tar.gz
|
||||||
/open-vm-tools-11.2.5-17337674.tar.gz
|
/open-vm-tools-11.2.5-17337674.tar.gz
|
||||||
|
/open-vm-tools-11.3.0-18090558.tar.gz
|
||||||
|
@ -1,712 +0,0 @@
|
|||||||
diff -Naur open-vm-tools-11.2.5-17337674.old/services/plugins/resolutionSet/resolutionCommon.c open-vm-tools-11.2.5-17337674/services/plugins/resolutionSet/resolutionCommon.c
|
|
||||||
--- open-vm-tools-11.2.5-17337674.old/services/plugins/resolutionSet/resolutionCommon.c 2020-12-17 21:11:31.000000000 +0100
|
|
||||||
+++ open-vm-tools-11.2.5-17337674/services/plugins/resolutionSet/resolutionCommon.c 2021-06-01 13:39:55.989687060 +0200
|
|
||||||
@@ -42,25 +42,8 @@
|
|
||||||
|
|
||||||
/* Required DRM version for resolutionKMS */
|
|
||||||
#define RESOLUTION_DRM_MAJOR 2
|
|
||||||
-#define RESOLUTION_DRM_MINOR 12
|
|
||||||
+#define RESOLUTION_DRM_MINOR 14
|
|
||||||
|
|
||||||
-/* Required Xorg driver version for resolutionKMS default on */
|
|
||||||
-#define RESOLUTION_XORG_MAJOR 13
|
|
||||||
-#define RESOLUTION_XORG_MINOR 2
|
|
||||||
-
|
|
||||||
-/* Recognition token for Xorg driver version scanner */
|
|
||||||
-#define RESOLUTION_XORG_VERSTRING "version="
|
|
||||||
-
|
|
||||||
-/*
|
|
||||||
- * Xorg driver file names to scan for. Only the first found will be
|
|
||||||
- * scanned for version info.
|
|
||||||
- */
|
|
||||||
-static const char *driverNames[]= {
|
|
||||||
- "/usr/lib64/xorg/modules/drivers/vmware_drv.so",
|
|
||||||
- "/usr/lib/xorg/modules/drivers/vmware_drv.so"
|
|
||||||
-};
|
|
||||||
-
|
|
||||||
-static const int numDriverNames = 2;
|
|
||||||
|
|
||||||
/*
|
|
||||||
*-----------------------------------------------------------------------------
|
|
||||||
@@ -106,52 +89,52 @@
|
|
||||||
*/
|
|
||||||
enumerate = udev_enumerate_new(udev);
|
|
||||||
if (udev_enumerate_add_match_subsystem(enumerate, "drm"))
|
|
||||||
- goto outErr;
|
|
||||||
+ goto outErr;
|
|
||||||
if (udev_enumerate_add_match_property(enumerate, "DEVTYPE", "drm_minor"))
|
|
||||||
- goto outErr;
|
|
||||||
+ goto outErr;
|
|
||||||
if (udev_enumerate_scan_devices(enumerate))
|
|
||||||
- goto outErr;
|
|
||||||
+ goto outErr;
|
|
||||||
|
|
||||||
devices = udev_enumerate_get_list_entry(enumerate);
|
|
||||||
udev_list_entry_foreach(devListEntry, devices) {
|
|
||||||
- const char *path, *vendor, *device;
|
|
||||||
- struct udev_device *parent;
|
|
||||||
+ const char *path, *vendor, *device;
|
|
||||||
+ struct udev_device *parent;
|
|
||||||
|
|
||||||
- path = udev_list_entry_get_name(devListEntry);
|
|
||||||
- if (!path)
|
|
||||||
- continue;
|
|
||||||
- if (!strstr(path, node))
|
|
||||||
- continue;
|
|
||||||
-
|
|
||||||
- dev = udev_device_new_from_syspath(udev, path);
|
|
||||||
- if (!dev)
|
|
||||||
- goto outErr;
|
|
||||||
-
|
|
||||||
- parent = udev_device_get_parent_with_subsystem_devtype(dev,
|
|
||||||
- "pci",
|
|
||||||
- NULL);
|
|
||||||
- if (!parent)
|
|
||||||
- goto skipCheck;
|
|
||||||
-
|
|
||||||
- vendor = udev_device_get_sysattr_value(parent, "vendor");
|
|
||||||
- device = udev_device_get_sysattr_value(parent, "device");
|
|
||||||
- if (!vendor || !device)
|
|
||||||
- goto skipCheck;
|
|
||||||
-
|
|
||||||
- if (strcmp(vendor, RESOLUTION_VENDOR) ||
|
|
||||||
- strcmp(device, RESOLUTION_DEVICE))
|
|
||||||
- goto skipCheck;
|
|
||||||
-
|
|
||||||
- devNode = udev_device_get_devnode(dev);
|
|
||||||
- if (!devNode)
|
|
||||||
- goto outFound;
|
|
||||||
-
|
|
||||||
- fd = open(devNode, O_RDWR);
|
|
||||||
- udev_device_unref(dev);
|
|
||||||
- break;
|
|
||||||
+ path = udev_list_entry_get_name(devListEntry);
|
|
||||||
+ if (!path)
|
|
||||||
+ continue;
|
|
||||||
+ if (!strstr(path, node))
|
|
||||||
+ continue;
|
|
||||||
+
|
|
||||||
+ dev = udev_device_new_from_syspath(udev, path);
|
|
||||||
+ if (!dev)
|
|
||||||
+ goto outErr;
|
|
||||||
+
|
|
||||||
+ parent = udev_device_get_parent_with_subsystem_devtype(dev,
|
|
||||||
+ "pci",
|
|
||||||
+ NULL);
|
|
||||||
+ if (!parent)
|
|
||||||
+ goto skipCheck;
|
|
||||||
+
|
|
||||||
+ vendor = udev_device_get_sysattr_value(parent, "vendor");
|
|
||||||
+ device = udev_device_get_sysattr_value(parent, "device");
|
|
||||||
+ if (!vendor || !device)
|
|
||||||
+ goto skipCheck;
|
|
||||||
+
|
|
||||||
+ if (strcmp(vendor, RESOLUTION_VENDOR) ||
|
|
||||||
+ strcmp(device, RESOLUTION_DEVICE))
|
|
||||||
+ goto skipCheck;
|
|
||||||
+
|
|
||||||
+ devNode = udev_device_get_devnode(dev);
|
|
||||||
+ if (!devNode)
|
|
||||||
+ goto outFound;
|
|
||||||
+
|
|
||||||
+ fd = open(devNode, O_RDWR);
|
|
||||||
+ udev_device_unref(dev);
|
|
||||||
+ break;
|
|
||||||
|
|
||||||
skipCheck:
|
|
||||||
- udev_device_unref(dev);
|
|
||||||
+ udev_device_unref(dev);
|
|
||||||
}
|
|
||||||
|
|
||||||
udev_enumerate_unref(enumerate);
|
|
||||||
@@ -199,23 +182,25 @@
|
|
||||||
static int
|
|
||||||
resolutionDRMCheckVersion(int fd) // IN: An open DRM file descriptor.
|
|
||||||
{
|
|
||||||
- drmVersionPtr ver = drmGetVersion(fd);
|
|
||||||
+ drmVersionPtr ver = drmGetVersion(fd);
|
|
||||||
|
|
||||||
- if (!ver) {
|
|
||||||
- g_debug("%s: Failed to get DRM version.\n", __func__);
|
|
||||||
- return -1;
|
|
||||||
- }
|
|
||||||
+ if (!ver) {
|
|
||||||
+ g_debug("%s: Failed to get DRM version.\n", __func__);
|
|
||||||
+ return -1;
|
|
||||||
+ }
|
|
||||||
|
|
||||||
- if (ver->version_major != RESOLUTION_DRM_MAJOR ||
|
|
||||||
- ver->version_minor < RESOLUTION_DRM_MINOR) {
|
|
||||||
- g_debug("%s: Insufficient DRM version %d.%d for resolutionKMS.\n",
|
|
||||||
- __func__, ver->version_major, ver->version_minor);
|
|
||||||
- drmFreeVersion(ver);
|
|
||||||
- return -1;
|
|
||||||
- }
|
|
||||||
+ if (ver->version_major != RESOLUTION_DRM_MAJOR ||
|
|
||||||
+ ver->version_minor < RESOLUTION_DRM_MINOR) {
|
|
||||||
+ g_debug("%s: Insufficient DRM version %d.%d for resolutionKMS.\n",
|
|
||||||
+ __func__, ver->version_major, ver->version_minor);
|
|
||||||
+ drmFreeVersion(ver);
|
|
||||||
+ return -1;
|
|
||||||
+ }
|
|
||||||
+ g_debug("%s: DRM version %d.%d.\n",
|
|
||||||
+ __func__, ver->version_major, ver->version_minor);
|
|
||||||
|
|
||||||
- drmFreeVersion(ver);
|
|
||||||
- return 0;
|
|
||||||
+ drmFreeVersion(ver);
|
|
||||||
+ return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@@ -241,27 +226,27 @@
|
|
||||||
static int
|
|
||||||
resolutionDRMRPrimaryCheckOpen(void)
|
|
||||||
{
|
|
||||||
- int fd = -1;
|
|
||||||
+ int fd = -1;
|
|
||||||
|
|
||||||
- fd = resolutionOpenDRM("renderD");
|
|
||||||
- if (fd < 0) {
|
|
||||||
- g_debug("%s: Failed to open DRM render node.\n", __func__);
|
|
||||||
- fd = resolutionOpenDRM("card");
|
|
||||||
- if (fd >= 0)
|
|
||||||
- (void) drmDropMaster(fd);
|
|
||||||
- }
|
|
||||||
- if (fd < 0) {
|
|
||||||
- g_debug("%s: Failed to open DRM card node.\n", __func__);
|
|
||||||
- goto outErr;
|
|
||||||
- }
|
|
||||||
+ fd = resolutionOpenDRM("renderD");
|
|
||||||
+ if (fd < 0) {
|
|
||||||
+ g_debug("%s: Failed to open DRM render node.\n", __func__);
|
|
||||||
+ fd = resolutionOpenDRM("card");
|
|
||||||
+ if (fd >= 0)
|
|
||||||
+ (void) drmDropMaster(fd);
|
|
||||||
+ }
|
|
||||||
+ if (fd < 0) {
|
|
||||||
+ g_debug("%s: Failed to open DRM card node.\n", __func__);
|
|
||||||
+ goto outErr;
|
|
||||||
+ }
|
|
||||||
|
|
||||||
- if (!resolutionDRMCheckVersion(fd)) {
|
|
||||||
- return fd;
|
|
||||||
- }
|
|
||||||
+ if (!resolutionDRMCheckVersion(fd)) {
|
|
||||||
+ return fd;
|
|
||||||
+ }
|
|
||||||
|
|
||||||
- close(fd);
|
|
||||||
- outErr:
|
|
||||||
- return -1;
|
|
||||||
+ close(fd);
|
|
||||||
+outErr:
|
|
||||||
+ return -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@@ -288,60 +273,43 @@
|
|
||||||
resolutionCheckForKMS(ToolsAppCtx *ctx) // IN: The ToolsAppCtx for
|
|
||||||
// configuration db access.
|
|
||||||
{
|
|
||||||
- GError *err = NULL;
|
|
||||||
- gboolean doResolutionKMS;
|
|
||||||
- int fd;
|
|
||||||
-
|
|
||||||
- doResolutionKMS = g_key_file_get_boolean(ctx->config, "resolutionKMS",
|
|
||||||
- "enable", &err);
|
|
||||||
- if (err) {
|
|
||||||
- /*
|
|
||||||
- * If there is nothing in the configuration file, require
|
|
||||||
- * at least Xorg driver version 13.2.0, which has the autolayout
|
|
||||||
- * feature, to enable resolutionKMS.
|
|
||||||
- */
|
|
||||||
- int major, minor, level;
|
|
||||||
- g_clear_error(&err);
|
|
||||||
- doResolutionKMS = FALSE;
|
|
||||||
- if (!resolutionXorgDriverVersion(numDriverNames, driverNames,
|
|
||||||
- RESOLUTION_XORG_VERSTRING, &major,
|
|
||||||
- &minor, &level) &&
|
|
||||||
- (major > RESOLUTION_XORG_MAJOR ||
|
|
||||||
- (major == RESOLUTION_XORG_MAJOR &&
|
|
||||||
- minor >= RESOLUTION_XORG_MINOR))) {
|
|
||||||
- doResolutionKMS = TRUE;
|
|
||||||
- g_debug("%s: ResolutionKMS enabled based on Xorg driver version.\n",
|
|
||||||
- __func__);
|
|
||||||
- } else {
|
|
||||||
- g_debug("%s: ResolutionKMS disabled. (No configuration).\n",
|
|
||||||
- __func__);
|
|
||||||
- doResolutionKMS = FALSE;
|
|
||||||
- }
|
|
||||||
- } else {
|
|
||||||
- g_debug("%s: ResolutionKMS %s using configuration file info.\n",
|
|
||||||
- __func__, (doResolutionKMS) ? "enabled" : "disabled");
|
|
||||||
- }
|
|
||||||
+ GError *err = NULL;
|
|
||||||
+ gboolean doResolutionKMS;
|
|
||||||
+ int fd;
|
|
||||||
+
|
|
||||||
+ doResolutionKMS = g_key_file_get_boolean(ctx->config, "resolutionKMS",
|
|
||||||
+ "enable", &err);
|
|
||||||
+ if (err) {
|
|
||||||
+ g_clear_error(&err);
|
|
||||||
+ /*
|
|
||||||
+ * We are going to try to see if we can load a valid vmwgfx
|
|
||||||
+ */
|
|
||||||
+ doResolutionKMS = TRUE;
|
|
||||||
+ } else {
|
|
||||||
+ g_debug("%s: ResolutionKMS %s using configuration file info.\n",
|
|
||||||
+ __func__, (doResolutionKMS) ? "enabled" : "disabled");
|
|
||||||
+ }
|
|
||||||
|
|
||||||
- if (!doResolutionKMS)
|
|
||||||
- return -1;
|
|
||||||
+ if (!doResolutionKMS)
|
|
||||||
+ return -1;
|
|
||||||
|
|
||||||
- if (resolutionDLOpen()) {
|
|
||||||
- g_warning("%s: Failed to find needed system libraries for "
|
|
||||||
- "resolutionKMS.\n", __func__);
|
|
||||||
- return -1;
|
|
||||||
- } else {
|
|
||||||
- g_message("%s: dlopen succeeded.\n", __func__);
|
|
||||||
- }
|
|
||||||
+ if (resolutionDLOpen()) {
|
|
||||||
+ g_warning("%s: Failed to find needed system libraries for "
|
|
||||||
+ "resolutionKMS.\n", __func__);
|
|
||||||
+ return -1;
|
|
||||||
+ } else {
|
|
||||||
+ g_message("%s: dlopen succeeded.\n", __func__);
|
|
||||||
+ }
|
|
||||||
|
|
||||||
- fd = resolutionDRMRPrimaryCheckOpen();
|
|
||||||
+ fd = resolutionDRMRPrimaryCheckOpen();
|
|
||||||
|
|
||||||
- if (fd < 0)
|
|
||||||
- g_warning("%s: No system support for resolutionKMS.\n", __func__);
|
|
||||||
- else
|
|
||||||
- g_message("%s: System support available for resolutionKMS.\n",
|
|
||||||
- __func__);
|
|
||||||
+ if (fd < 0)
|
|
||||||
+ g_warning("%s: No system support for resolutionKMS.\n", __func__);
|
|
||||||
+ else
|
|
||||||
+ g_message("%s: System support available for resolutionKMS.\n",
|
|
||||||
+ __func__);
|
|
||||||
|
|
||||||
- return fd;
|
|
||||||
+ return fd;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
@@ -364,84 +332,8 @@
|
|
||||||
void
|
|
||||||
resolutionDRMClose(int fd)
|
|
||||||
{
|
|
||||||
- close(fd);
|
|
||||||
- resolutionDLClose();
|
|
||||||
+ close(fd);
|
|
||||||
+ resolutionDLClose();
|
|
||||||
}
|
|
||||||
|
|
||||||
#endif /* ENABLE_RESOLUTIONKMS */
|
|
||||||
-
|
|
||||||
-/*
|
|
||||||
- *-----------------------------------------------------------------------------
|
|
||||||
- *
|
|
||||||
- * resolutionXorgDriverVersion --
|
|
||||||
- *
|
|
||||||
- * Scans for VMWare Xorg driver files and tries to determine the Xorg
|
|
||||||
- * driver version.
|
|
||||||
- *
|
|
||||||
- * Results:
|
|
||||||
- * If succesful returns zero and outputs the driver version in the
|
|
||||||
- * parameters major, minor and level. If not successful, returns -1.
|
|
||||||
- *
|
|
||||||
- * Side effects:
|
|
||||||
- * None.
|
|
||||||
- *
|
|
||||||
- *-----------------------------------------------------------------------------
|
|
||||||
- */
|
|
||||||
-int
|
|
||||||
-resolutionXorgDriverVersion(int numPaths, // IN: Number of strings
|
|
||||||
- // in paths.
|
|
||||||
- const char *paths[], // IN: Possible driver
|
|
||||||
- // paths.
|
|
||||||
- const char versionString[], // IN: Version token.
|
|
||||||
- int *major, // OUT: Major version #
|
|
||||||
- int *minor, // OUT: Minor version #
|
|
||||||
- int *level) // OUT: Patchlevel
|
|
||||||
- // version #
|
|
||||||
-{
|
|
||||||
- FILE *driver = NULL;
|
|
||||||
- const char *curMatch;
|
|
||||||
- int curFileChar;
|
|
||||||
- int i;
|
|
||||||
-
|
|
||||||
- g_debug("%s: Scanning for VMWare Xorg drivers.\n", __func__);
|
|
||||||
- for(i = 0; i < numPaths; ++i) {
|
|
||||||
- g_debug("%s: Looking for \"%s\".\n", __func__, paths[i]);
|
|
||||||
- driver = fopen(paths[i], "r");
|
|
||||||
- if (driver)
|
|
||||||
- break;
|
|
||||||
- }
|
|
||||||
-
|
|
||||||
- if (!driver) {
|
|
||||||
- g_debug("%s: No driver found.\n", __func__);
|
|
||||||
- return -1;
|
|
||||||
- }
|
|
||||||
-
|
|
||||||
- g_debug("%s: Driver found. Looking for version info.\n", __func__);
|
|
||||||
- curMatch = versionString;
|
|
||||||
- while (*curMatch) {
|
|
||||||
- if (feof(driver))
|
|
||||||
- goto outNotFound;
|
|
||||||
-
|
|
||||||
- curFileChar = fgetc(driver);
|
|
||||||
- if (curFileChar != EOF && curFileChar == *curMatch) {
|
|
||||||
- curMatch++;
|
|
||||||
- continue;
|
|
||||||
- } else if (curMatch != versionString) {
|
|
||||||
- curMatch = versionString;
|
|
||||||
- (void) ungetc(curFileChar, driver);
|
|
||||||
- }
|
|
||||||
- }
|
|
||||||
-
|
|
||||||
- if (fscanf(driver, "%d.%d.%d", major, minor, level) != 3)
|
|
||||||
- goto outNotFound;
|
|
||||||
-
|
|
||||||
- fclose(driver);
|
|
||||||
- g_debug("%s: Version info found: %d.%d.%d\n", __func__, *major, *minor,
|
|
||||||
- *level);
|
|
||||||
- return 0;
|
|
||||||
-
|
|
||||||
- outNotFound:
|
|
||||||
- fclose(driver);
|
|
||||||
- g_debug("%s: No version info found.\n", __func__);
|
|
||||||
- return -1;
|
|
||||||
-}
|
|
||||||
diff -Naur open-vm-tools-11.2.5-17337674.old/services/plugins/resolutionSet/resolutionCommon.h open-vm-tools-11.2.5-17337674/services/plugins/resolutionSet/resolutionCommon.h
|
|
||||||
--- open-vm-tools-11.2.5-17337674.old/services/plugins/resolutionSet/resolutionCommon.h 2020-12-17 21:11:31.000000000 +0100
|
|
||||||
+++ open-vm-tools-11.2.5-17337674/services/plugins/resolutionSet/resolutionCommon.h 2021-06-01 13:39:55.989687060 +0200
|
|
||||||
@@ -42,12 +42,4 @@
|
|
||||||
|
|
||||||
#endif /* !ENABLE_RESOLUTIONKMS */
|
|
||||||
|
|
||||||
-int
|
|
||||||
-resolutionXorgDriverVersion(int numPaths,
|
|
||||||
- const char *paths[],
|
|
||||||
- const char versionString[],
|
|
||||||
- int *major,
|
|
||||||
- int *minor,
|
|
||||||
- int *level);
|
|
||||||
-
|
|
||||||
#endif /* _RESOLUTION_COMMON_H_ */
|
|
||||||
diff -Naur open-vm-tools-11.2.5-17337674.old/services/plugins/resolutionSet/resolutionDL.c open-vm-tools-11.2.5-17337674/services/plugins/resolutionSet/resolutionDL.c
|
|
||||||
--- open-vm-tools-11.2.5-17337674.old/services/plugins/resolutionSet/resolutionDL.c 2020-12-17 21:11:31.000000000 +0100
|
|
||||||
+++ open-vm-tools-11.2.5-17337674/services/plugins/resolutionSet/resolutionDL.c 2021-06-01 13:39:55.989687060 +0200
|
|
||||||
@@ -34,44 +34,44 @@
|
|
||||||
|
|
||||||
|
|
||||||
struct FuncToResolv {
|
|
||||||
- size_t offset;
|
|
||||||
- const char *name;
|
|
||||||
+ size_t offset;
|
|
||||||
+ const char *name;
|
|
||||||
};
|
|
||||||
|
|
||||||
#define UDEV_RESOLV(_name) \
|
|
||||||
- {.offset = offsetof(struct Udev1Interface, _name), \
|
|
||||||
- .name = "udev"#_name}
|
|
||||||
+ {.offset = offsetof(struct Udev1Interface, _name), \
|
|
||||||
+ .name = "udev"#_name}
|
|
||||||
|
|
||||||
#define LIBDRM_RESOLV(_name) \
|
|
||||||
- {.offset = offsetof(struct Drm2Interface, _name), \
|
|
||||||
- .name = "drm"#_name}
|
|
||||||
+ {.offset = offsetof(struct Drm2Interface, _name), \
|
|
||||||
+ .name = "drm"#_name}
|
|
||||||
|
|
||||||
|
|
||||||
static struct FuncToResolv udev1Table[] = {
|
|
||||||
- UDEV_RESOLV(_device_get_devnode),
|
|
||||||
- UDEV_RESOLV(_device_get_parent_with_subsystem_devtype),
|
|
||||||
- UDEV_RESOLV(_device_get_sysattr_value),
|
|
||||||
- UDEV_RESOLV(_device_new_from_syspath),
|
|
||||||
- UDEV_RESOLV(_device_unref),
|
|
||||||
- UDEV_RESOLV(_enumerate_add_match_property),
|
|
||||||
- UDEV_RESOLV(_enumerate_add_match_subsystem),
|
|
||||||
- UDEV_RESOLV(_enumerate_get_list_entry),
|
|
||||||
- UDEV_RESOLV(_enumerate_new),
|
|
||||||
- UDEV_RESOLV(_enumerate_scan_devices),
|
|
||||||
- UDEV_RESOLV(_enumerate_unref),
|
|
||||||
- UDEV_RESOLV(_list_entry_get_name),
|
|
||||||
- UDEV_RESOLV(_list_entry_get_next),
|
|
||||||
- UDEV_RESOLV(_new),
|
|
||||||
- UDEV_RESOLV(_unref)
|
|
||||||
+ UDEV_RESOLV(_device_get_devnode),
|
|
||||||
+ UDEV_RESOLV(_device_get_parent_with_subsystem_devtype),
|
|
||||||
+ UDEV_RESOLV(_device_get_sysattr_value),
|
|
||||||
+ UDEV_RESOLV(_device_new_from_syspath),
|
|
||||||
+ UDEV_RESOLV(_device_unref),
|
|
||||||
+ UDEV_RESOLV(_enumerate_add_match_property),
|
|
||||||
+ UDEV_RESOLV(_enumerate_add_match_subsystem),
|
|
||||||
+ UDEV_RESOLV(_enumerate_get_list_entry),
|
|
||||||
+ UDEV_RESOLV(_enumerate_new),
|
|
||||||
+ UDEV_RESOLV(_enumerate_scan_devices),
|
|
||||||
+ UDEV_RESOLV(_enumerate_unref),
|
|
||||||
+ UDEV_RESOLV(_list_entry_get_name),
|
|
||||||
+ UDEV_RESOLV(_list_entry_get_next),
|
|
||||||
+ UDEV_RESOLV(_new),
|
|
||||||
+ UDEV_RESOLV(_unref)
|
|
||||||
};
|
|
||||||
|
|
||||||
static struct FuncToResolv drm2Table[] = {
|
|
||||||
- LIBDRM_RESOLV(Open),
|
|
||||||
- LIBDRM_RESOLV(Close),
|
|
||||||
- LIBDRM_RESOLV(GetVersion),
|
|
||||||
- LIBDRM_RESOLV(FreeVersion),
|
|
||||||
- LIBDRM_RESOLV(DropMaster),
|
|
||||||
- LIBDRM_RESOLV(CommandWrite)
|
|
||||||
+ LIBDRM_RESOLV(Open),
|
|
||||||
+ LIBDRM_RESOLV(Close),
|
|
||||||
+ LIBDRM_RESOLV(GetVersion),
|
|
||||||
+ LIBDRM_RESOLV(FreeVersion),
|
|
||||||
+ LIBDRM_RESOLV(DropMaster),
|
|
||||||
+ LIBDRM_RESOLV(CommandWrite)
|
|
||||||
};
|
|
||||||
|
|
||||||
struct Udev1Interface *udevi = NULL;
|
|
||||||
@@ -95,20 +95,20 @@
|
|
||||||
void
|
|
||||||
resolutionDLClose(void)
|
|
||||||
{
|
|
||||||
- if (udevi) {
|
|
||||||
- free(udevi);
|
|
||||||
- udevi = NULL;
|
|
||||||
- }
|
|
||||||
-
|
|
||||||
- if (drmi) {
|
|
||||||
- free(drmi);
|
|
||||||
- drmi = NULL;
|
|
||||||
- }
|
|
||||||
-
|
|
||||||
- if (dlhandle) {
|
|
||||||
- dlclose(dlhandle);
|
|
||||||
- dlhandle = NULL;
|
|
||||||
- }
|
|
||||||
+ if (udevi) {
|
|
||||||
+ free(udevi);
|
|
||||||
+ udevi = NULL;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ if (drmi) {
|
|
||||||
+ free(drmi);
|
|
||||||
+ drmi = NULL;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ if (dlhandle) {
|
|
||||||
+ dlclose(dlhandle);
|
|
||||||
+ dlhandle = NULL;
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
@@ -128,47 +128,47 @@
|
|
||||||
*/
|
|
||||||
static int
|
|
||||||
resolutionDLResolve(void **ptr, // OUT: pointer to
|
|
||||||
- // function table.
|
|
||||||
- size_t size, // IN: Size of ft.
|
|
||||||
- const char name[], // IN: Library name.
|
|
||||||
- const struct FuncToResolv table[], // IN: Table of name-
|
|
||||||
- // offset pairs
|
|
||||||
- int numEntries) // IN: Num entries in
|
|
||||||
+ // function table.
|
|
||||||
+ size_t size, // IN: Size of ft.
|
|
||||||
+ const char name[], // IN: Library name.
|
|
||||||
+ const struct FuncToResolv table[], // IN: Table of name-
|
|
||||||
+ // offset pairs
|
|
||||||
+ int numEntries) // IN: Num entries in
|
|
||||||
// table.
|
|
||||||
{
|
|
||||||
- void **func_ptr;
|
|
||||||
- int i;
|
|
||||||
+ void **func_ptr;
|
|
||||||
+ int i;
|
|
||||||
|
|
||||||
- if (*ptr)
|
|
||||||
- return 0;
|
|
||||||
+ if (*ptr)
|
|
||||||
+ return 0;
|
|
||||||
|
|
||||||
- *ptr = malloc(size);
|
|
||||||
- if (!*ptr)
|
|
||||||
- return -1;
|
|
||||||
-
|
|
||||||
- dlhandle = dlopen(name, RTLD_NOW);
|
|
||||||
- if (!dlhandle) {
|
|
||||||
- g_debug("%s: Failed to open shared library \"%s\".\n", __func__,
|
|
||||||
- name);
|
|
||||||
- goto out_err;
|
|
||||||
- }
|
|
||||||
-
|
|
||||||
- for (i = 0; i < numEntries; ++i) {
|
|
||||||
- func_ptr = (void *) ((unsigned long) *ptr + table[i].offset);
|
|
||||||
- *func_ptr = dlsym(dlhandle, table[i].name);
|
|
||||||
- if (!*func_ptr) {
|
|
||||||
- g_debug("%s: Failed to resolve %s symbol \"%s\".\n", __func__,
|
|
||||||
- name,table[i].name);
|
|
||||||
- goto out_err;
|
|
||||||
- }
|
|
||||||
- }
|
|
||||||
+ *ptr = malloc(size);
|
|
||||||
+ if (!*ptr)
|
|
||||||
+ return -1;
|
|
||||||
+
|
|
||||||
+ dlhandle = dlopen(name, RTLD_NOW);
|
|
||||||
+ if (!dlhandle) {
|
|
||||||
+ g_debug("%s: Failed to open shared library \"%s\".\n", __func__,
|
|
||||||
+ name);
|
|
||||||
+ goto out_err;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ for (i = 0; i < numEntries; ++i) {
|
|
||||||
+ func_ptr = (void *) ((unsigned long) *ptr + table[i].offset);
|
|
||||||
+ *func_ptr = dlsym(dlhandle, table[i].name);
|
|
||||||
+ if (!*func_ptr) {
|
|
||||||
+ g_debug("%s: Failed to resolve %s symbol \"%s\".\n", __func__,
|
|
||||||
+ name,table[i].name);
|
|
||||||
+ goto out_err;
|
|
||||||
+ }
|
|
||||||
+ }
|
|
||||||
|
|
||||||
- return 0;
|
|
||||||
+ return 0;
|
|
||||||
|
|
||||||
- out_err:
|
|
||||||
- resolutionDLClose();
|
|
||||||
+out_err:
|
|
||||||
+ resolutionDLClose();
|
|
||||||
|
|
||||||
- return -1;
|
|
||||||
+ return -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
@@ -190,18 +190,18 @@
|
|
||||||
int
|
|
||||||
resolutionDLOpen(void)
|
|
||||||
{
|
|
||||||
- /* We support libudev major versions 0 and 1 for now. */
|
|
||||||
- if (resolutionDLResolve((void **)&udevi, sizeof(*udevi), "libudev.so.1",
|
|
||||||
- udev1Table, ARRAYSIZE(udev1Table)) &&
|
|
||||||
- resolutionDLResolve((void **)&udevi, sizeof(*udevi), "libudev.so.0",
|
|
||||||
- udev1Table, ARRAYSIZE(udev1Table)))
|
|
||||||
- return -1;
|
|
||||||
-
|
|
||||||
- if (resolutionDLResolve((void **)&drmi, sizeof(*drmi), "libdrm.so.2",
|
|
||||||
- drm2Table, ARRAYSIZE(drm2Table)))
|
|
||||||
- return -1;
|
|
||||||
+ /* We support libudev major versions 0 and 1 for now. */
|
|
||||||
+ if (resolutionDLResolve((void **)&udevi, sizeof(*udevi), "libudev.so.1",
|
|
||||||
+ udev1Table, ARRAYSIZE(udev1Table)) &&
|
|
||||||
+ resolutionDLResolve((void **)&udevi, sizeof(*udevi), "libudev.so.0",
|
|
||||||
+ udev1Table, ARRAYSIZE(udev1Table)))
|
|
||||||
+ return -1;
|
|
||||||
+
|
|
||||||
+ if (resolutionDLResolve((void **)&drmi, sizeof(*drmi), "libdrm.so.2",
|
|
||||||
+ drm2Table, ARRAYSIZE(drm2Table)))
|
|
||||||
+ return -1;
|
|
||||||
|
|
||||||
- return 0;
|
|
||||||
+ return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
#endif /* !HAVE_LIBUDEV */
|
|
||||||
diff -Naur open-vm-tools-11.2.5-17337674.old/services/plugins/resolutionSet/resolutionX11.c open-vm-tools-11.2.5-17337674/services/plugins/resolutionSet/resolutionX11.c
|
|
||||||
--- open-vm-tools-11.2.5-17337674.old/services/plugins/resolutionSet/resolutionX11.c 2020-12-17 21:11:31.000000000 +0100
|
|
||||||
+++ open-vm-tools-11.2.5-17337674/services/plugins/resolutionSet/resolutionX11.c 2021-06-01 13:39:55.990687078 +0200
|
|
||||||
@@ -82,6 +82,83 @@
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
+ *-----------------------------------------------------------------------------
|
|
||||||
+ *
|
|
||||||
+ * resolutionXorgDriverVersion --
|
|
||||||
+ *
|
|
||||||
+ * Scans for VMWare Xorg driver files and tries to determine the Xorg
|
|
||||||
+ * driver version.
|
|
||||||
+ *
|
|
||||||
+ * Results:
|
|
||||||
+ * If succesful returns zero and outputs the driver version in the
|
|
||||||
+ * parameters major, minor and level. If not successful, returns -1.
|
|
||||||
+ *
|
|
||||||
+ * Side effects:
|
|
||||||
+ * None.
|
|
||||||
+ *
|
|
||||||
+ *-----------------------------------------------------------------------------
|
|
||||||
+ */
|
|
||||||
+static int
|
|
||||||
+resolutionXorgDriverVersion(int numPaths, // IN: Number of strings
|
|
||||||
+ // in paths.
|
|
||||||
+ const char *paths[], // IN: Possible driver
|
|
||||||
+ // paths.
|
|
||||||
+ const char versionString[], // IN: Version token.
|
|
||||||
+ int *major, // OUT: Major version #
|
|
||||||
+ int *minor, // OUT: Minor version #
|
|
||||||
+ int *level) // OUT: Patchlevel
|
|
||||||
+ // version #
|
|
||||||
+{
|
|
||||||
+ FILE *driver = NULL;
|
|
||||||
+ const char *curMatch;
|
|
||||||
+ int curFileChar;
|
|
||||||
+ int i;
|
|
||||||
+
|
|
||||||
+ g_debug("%s: Scanning for VMWare Xorg drivers.\n", __func__);
|
|
||||||
+ for(i = 0; i < numPaths; ++i) {
|
|
||||||
+ g_debug("%s: Looking for \"%s\".\n", __func__, paths[i]);
|
|
||||||
+ driver = fopen(paths[i], "r");
|
|
||||||
+ if (driver)
|
|
||||||
+ break;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ if (!driver) {
|
|
||||||
+ g_debug("%s: No driver found.\n", __func__);
|
|
||||||
+ return -1;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ g_debug("%s: Driver found. Looking for version info.\n", __func__);
|
|
||||||
+ curMatch = versionString;
|
|
||||||
+ while (*curMatch) {
|
|
||||||
+ if (feof(driver))
|
|
||||||
+ goto outNotFound;
|
|
||||||
+
|
|
||||||
+ curFileChar = fgetc(driver);
|
|
||||||
+ if (curFileChar != EOF && curFileChar == *curMatch) {
|
|
||||||
+ curMatch++;
|
|
||||||
+ continue;
|
|
||||||
+ } else if (curMatch != versionString) {
|
|
||||||
+ curMatch = versionString;
|
|
||||||
+ (void) ungetc(curFileChar, driver);
|
|
||||||
+ }
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ if (fscanf(driver, "%d.%d.%d", major, minor, level) != 3)
|
|
||||||
+ goto outNotFound;
|
|
||||||
+
|
|
||||||
+ fclose(driver);
|
|
||||||
+ g_debug("%s: Version info found: %d.%d.%d\n", __func__, *major, *minor,
|
|
||||||
+ *level);
|
|
||||||
+ return 0;
|
|
||||||
+
|
|
||||||
+outNotFound:
|
|
||||||
+ fclose(driver);
|
|
||||||
+ g_debug("%s: No version info found.\n", __func__);
|
|
||||||
+ return -1;
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+/*
|
|
||||||
* Global function definitions
|
|
||||||
*/
|
|
||||||
|
|
@ -1,13 +0,0 @@
|
|||||||
diff --git a/lib/pollGtk/pollGtk.c b/lib/pollGtk/pollGtk.c
|
|
||||||
index 4ccaeda..336a8bf 100644
|
|
||||||
--- a/lib/pollGtk/pollGtk.c
|
|
||||||
+++ b/lib/pollGtk/pollGtk.c
|
|
||||||
@@ -127,7 +127,7 @@ typedef struct Poll {
|
|
||||||
} Poll;
|
|
||||||
|
|
||||||
static Poll *pollState;
|
|
||||||
-static volatile gsize inited = 0;
|
|
||||||
+static gsize inited = 0;
|
|
||||||
|
|
||||||
static VMwareStatus
|
|
||||||
PollGtkCallback(PollClassSet classSet, // IN
|
|
@ -1,72 +0,0 @@
|
|||||||
diff -ur a/lib/include/tracer.hh b/lib/include/tracer.hh
|
|
||||||
--- a/lib/include/tracer.hh 2020-12-17 12:11:31.000000000 -0800
|
|
||||||
+++ b/lib/include/tracer.hh 2021-03-15 19:51:49.287342746 -0700
|
|
||||||
@@ -28,9 +28,7 @@
|
|
||||||
|
|
||||||
#include "vm_basic_defs.h"
|
|
||||||
|
|
||||||
-extern "C" {
|
|
||||||
#include "glib.h"
|
|
||||||
-}
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef VMX86_DEVEL
|
|
||||||
diff -ur a/services/plugins/dndcp/copyPasteUIX11.cpp b/services/plugins/dndcp/copyPasteUIX11.cpp
|
|
||||||
--- a/services/plugins/dndcp/copyPasteUIX11.cpp 2020-12-17 12:11:31.000000000 -0800
|
|
||||||
+++ b/services/plugins/dndcp/copyPasteUIX11.cpp 2021-03-15 19:53:20.020952955 -0700
|
|
||||||
@@ -1666,6 +1666,7 @@
|
|
||||||
char buf[sizeof(VMBLOCK_FUSE_READ_RESPONSE)];
|
|
||||||
ssize_t size;
|
|
||||||
size = read(fd, buf, sizeof(VMBLOCK_FUSE_READ_RESPONSE));
|
|
||||||
+ (void) size; /* Prevent unused variable warning */
|
|
||||||
/*
|
|
||||||
* The current thread will block in read function until
|
|
||||||
* any other application accesses the file params->fileBlockName
|
|
||||||
diff -ur a/services/plugins/dndcp/dndcp.cpp b/services/plugins/dndcp/dndcp.cpp
|
|
||||||
--- a/services/plugins/dndcp/dndcp.cpp 2020-12-17 12:11:31.000000000 -0800
|
|
||||||
+++ b/services/plugins/dndcp/dndcp.cpp 2021-03-15 19:54:34.873281325 -0700
|
|
||||||
@@ -33,9 +33,9 @@
|
|
||||||
|
|
||||||
extern "C" {
|
|
||||||
#include "vmware/guestrpc/tclodefs.h"
|
|
||||||
+}
|
|
||||||
#include "vmware/tools/plugin.h"
|
|
||||||
#include "vmware/tools/utils.h"
|
|
||||||
-}
|
|
||||||
|
|
||||||
#include <string.h>
|
|
||||||
#include "copyPasteDnDWrapper.h"
|
|
||||||
diff -ur a/services/plugins/dndcp/dndGuest/dndCPTransportGuestRpc.hpp b/services/plugins/dndcp/dndGuest/dndCPTransportGuestRpc.hpp
|
|
||||||
--- a/services/plugins/dndcp/dndGuest/dndCPTransportGuestRpc.hpp 2020-12-17 12:12:15.000000000 -0800
|
|
||||||
+++ b/services/plugins/dndcp/dndGuest/dndCPTransportGuestRpc.hpp 2021-03-15 19:55:28.810238519 -0700
|
|
||||||
@@ -31,13 +31,11 @@
|
|
||||||
|
|
||||||
#include "dnd.h"
|
|
||||||
|
|
||||||
-extern "C" {
|
|
||||||
#ifdef VMX86_TOOLS
|
|
||||||
#include "vmware/tools/guestrpc.h"
|
|
||||||
#else
|
|
||||||
#include "guest_rpc.h"
|
|
||||||
#endif
|
|
||||||
-}
|
|
||||||
|
|
||||||
#define GUEST_RPC_CMD_STR_DND "dnd.transport"
|
|
||||||
#define GUEST_RPC_CMD_STR_CP "copypaste.transport"
|
|
||||||
diff -ur a/services/plugins/dndcp/dndUIX11.cpp b/services/plugins/dndcp/dndUIX11.cpp
|
|
||||||
--- a/services/plugins/dndcp/dndUIX11.cpp 2020-12-17 12:11:31.000000000 -0800
|
|
||||||
+++ b/services/plugins/dndcp/dndUIX11.cpp 2021-03-15 20:53:51.733705766 -0700
|
|
||||||
@@ -467,8 +467,13 @@
|
|
||||||
#ifndef GTK3
|
|
||||||
event.device = gdk_device_get_core_pointer();
|
|
||||||
#else
|
|
||||||
+ #if GTK_MINOR_VERSION >= 20
|
|
||||||
+ GdkSeat* seat = gdk_display_get_default_seat(gdk_window_get_display(event.window));
|
|
||||||
+ event.device = gdk_seat_get_pointer(seat);
|
|
||||||
+ #else
|
|
||||||
GdkDeviceManager* manager = gdk_display_get_device_manager(gdk_window_get_display(event.window));
|
|
||||||
event.device = gdk_device_manager_get_client_pointer(manager);
|
|
||||||
+ #endif
|
|
||||||
#endif
|
|
||||||
event.x_root = mOrigin.get_x();
|
|
||||||
event.y_root = mOrigin.get_y();
|
|
@ -19,9 +19,9 @@
|
|||||||
################################################################################
|
################################################################################
|
||||||
|
|
||||||
%global _hardened_build 1
|
%global _hardened_build 1
|
||||||
%global majorversion 11.2
|
%global majorversion 11.3
|
||||||
%global minorversion 5
|
%global minorversion 0
|
||||||
%global toolsbuild 17337674
|
%global toolsbuild 18090558
|
||||||
%global toolsversion %{majorversion}.%{minorversion}
|
%global toolsversion %{majorversion}.%{minorversion}
|
||||||
%global toolsdaemon vmtoolsd
|
%global toolsdaemon vmtoolsd
|
||||||
%global vgauthdaemon vgauthd
|
%global vgauthdaemon vgauthd
|
||||||
@ -32,7 +32,7 @@
|
|||||||
|
|
||||||
Name: open-vm-tools
|
Name: open-vm-tools
|
||||||
Version: %{toolsversion}
|
Version: %{toolsversion}
|
||||||
Release: 9%{?dist}
|
Release: 1%{?dist}
|
||||||
Summary: Open Virtual Machine Tools for virtual machines hosted on VMware
|
Summary: Open Virtual Machine Tools for virtual machines hosted on VMware
|
||||||
License: GPLv2
|
License: GPLv2
|
||||||
URL: https://github.com/vmware/%{name}
|
URL: https://github.com/vmware/%{name}
|
||||||
@ -44,9 +44,6 @@ Source3: run-vmblock\x2dfuse.mount
|
|||||||
Source4: open-vm-tools.conf
|
Source4: open-vm-tools.conf
|
||||||
Source5: vmtoolsd.pam
|
Source5: vmtoolsd.pam
|
||||||
|
|
||||||
# 11.3.x branch:
|
|
||||||
# https://github.com/vmware/open-vm-tools/commit/ff5eb5f448c78448b96f9c3db957d19f0288a9b6
|
|
||||||
Patch0: %{name}-fix-kms-autodetection.patch
|
|
||||||
|
|
||||||
%if 0%{?rhel} >= 7
|
%if 0%{?rhel} >= 7
|
||||||
ExclusiveArch: x86_64
|
ExclusiveArch: x86_64
|
||||||
@ -54,8 +51,9 @@ ExclusiveArch: x86_64
|
|||||||
ExclusiveArch: %{ix86} x86_64 aarch64
|
ExclusiveArch: %{ix86} x86_64 aarch64
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
Patch1: %{name}-gcc11.patch
|
# Patches
|
||||||
Patch2: %{name}-gdk-glib.patch
|
#Patch1: <patch-name1>.patch
|
||||||
|
#Patch2: <patch-name2>.patch
|
||||||
|
|
||||||
BuildRequires: autoconf
|
BuildRequires: autoconf
|
||||||
BuildRequires: automake
|
BuildRequires: automake
|
||||||
@ -330,6 +328,7 @@ fi
|
|||||||
%{_bindir}/vm-support
|
%{_bindir}/vm-support
|
||||||
%{_bindir}/vmhgfs-fuse
|
%{_bindir}/vmhgfs-fuse
|
||||||
%{_bindir}/vmtoolsd
|
%{_bindir}/vmtoolsd
|
||||||
|
%{_bindir}/vmware-alias-import
|
||||||
%{_bindir}/vmware-checkvm
|
%{_bindir}/vmware-checkvm
|
||||||
%{_bindir}/vmware-hgfsclient
|
%{_bindir}/vmware-hgfsclient
|
||||||
%{_bindir}/vmware-namespace-cmd
|
%{_bindir}/vmware-namespace-cmd
|
||||||
@ -339,6 +338,7 @@ fi
|
|||||||
%{_bindir}/vmware-xferlogs
|
%{_bindir}/vmware-xferlogs
|
||||||
%{_libdir}/libDeployPkg.so.*
|
%{_libdir}/libDeployPkg.so.*
|
||||||
%{_libdir}/libguestlib.so.*
|
%{_libdir}/libguestlib.so.*
|
||||||
|
%{_libdir}/libguestStoreClient.so.*
|
||||||
%{_libdir}/libhgfs.so.*
|
%{_libdir}/libhgfs.so.*
|
||||||
%{_libdir}/libvgauth.so.*
|
%{_libdir}/libvgauth.so.*
|
||||||
%{_libdir}/libvmtools.so.*
|
%{_libdir}/libvmtools.so.*
|
||||||
@ -349,7 +349,9 @@ fi
|
|||||||
%dir %{_libdir}/%{name}/plugins/vmsvc
|
%dir %{_libdir}/%{name}/plugins/vmsvc
|
||||||
%{_libdir}/%{name}/plugins/vmsvc/libappInfo.so
|
%{_libdir}/%{name}/plugins/vmsvc/libappInfo.so
|
||||||
%{_libdir}/%{name}/plugins/vmsvc/libdeployPkgPlugin.so
|
%{_libdir}/%{name}/plugins/vmsvc/libdeployPkgPlugin.so
|
||||||
|
%{_libdir}/%{name}/plugins/vmsvc/libgdp.so
|
||||||
%{_libdir}/%{name}/plugins/vmsvc/libguestInfo.so
|
%{_libdir}/%{name}/plugins/vmsvc/libguestInfo.so
|
||||||
|
%{_libdir}/%{name}/plugins/vmsvc/libguestStore.so
|
||||||
%{_libdir}/%{name}/plugins/vmsvc/libpowerOps.so
|
%{_libdir}/%{name}/plugins/vmsvc/libpowerOps.so
|
||||||
%{_libdir}/%{name}/plugins/vmsvc/libresolutionKMS.so
|
%{_libdir}/%{name}/plugins/vmsvc/libresolutionKMS.so
|
||||||
%{_libdir}/%{name}/plugins/vmsvc/libtimeSync.so
|
%{_libdir}/%{name}/plugins/vmsvc/libtimeSync.so
|
||||||
@ -364,6 +366,7 @@ fi
|
|||||||
%files desktop
|
%files desktop
|
||||||
%{_sysconfdir}/xdg/autostart/*.desktop
|
%{_sysconfdir}/xdg/autostart/*.desktop
|
||||||
%{_bindir}/vmware-user
|
%{_bindir}/vmware-user
|
||||||
|
%{_bindir}/vmwgfxctrl
|
||||||
%attr(4755,-,-) %{_bindir}/vmware-user-suid-wrapper
|
%attr(4755,-,-) %{_bindir}/vmware-user-suid-wrapper
|
||||||
%{_bindir}/vmware-vmblock-fuse
|
%{_bindir}/vmware-vmblock-fuse
|
||||||
%{_libdir}/%{name}/plugins/vmusr/
|
%{_libdir}/%{name}/plugins/vmusr/
|
||||||
@ -380,6 +383,7 @@ fi
|
|||||||
%{_libdir}/pkgconfig/*.pc
|
%{_libdir}/pkgconfig/*.pc
|
||||||
%{_libdir}/libDeployPkg.so
|
%{_libdir}/libDeployPkg.so
|
||||||
%{_libdir}/libguestlib.so
|
%{_libdir}/libguestlib.so
|
||||||
|
%{_libdir}/libguestStoreClient.so
|
||||||
%{_libdir}/libhgfs.so
|
%{_libdir}/libhgfs.so
|
||||||
%{_libdir}/libvgauth.so
|
%{_libdir}/libvgauth.so
|
||||||
%{_libdir}/libvmtools.so
|
%{_libdir}/libvmtools.so
|
||||||
@ -388,6 +392,14 @@ fi
|
|||||||
%{_bindir}/vmware-vgauth-smoketest
|
%{_bindir}/vmware-vgauth-smoketest
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Thu Jul 15 2021 Ravindra Kumar <ravindrakumar@vmware.com> - 11.3.0-1
|
||||||
|
- Package new upstream version open-vm-tools-11.3.0-18090558.
|
||||||
|
- Add vmware-alias-import, vmwgfxctrl, libgdp.so, libguestStore.so
|
||||||
|
and libguestStoreClient.so.*.
|
||||||
|
- Remove open-vm-tools-fix-kms-autodetection.patch,
|
||||||
|
open-vm-tools-gcc11.patch and open-vm-tools-gdk-glib.patch
|
||||||
|
as no longer needed.
|
||||||
|
|
||||||
* Tue Jun 01 2021 Simone Caronni <negativo17@gmail.com> - 11.2.5-9
|
* Tue Jun 01 2021 Simone Caronni <negativo17@gmail.com> - 11.2.5-9
|
||||||
- Backport patch for KMS autodetection.
|
- Backport patch for KMS autodetection.
|
||||||
|
|
||||||
|
2
sources
2
sources
@ -1 +1 @@
|
|||||||
SHA512 (open-vm-tools-11.2.5-17337674.tar.gz) = b6d4bc6522418ec7a881752181ad9240e535854df492e758abf3996c6afe245466ffbff60cc1b6cdff5cf731b5769c9f9cb96aed29f0b788d0eef05f91fcf8ab
|
SHA512 (open-vm-tools-11.3.0-18090558.tar.gz) = 36fa4fc309e57f49f1000abe8ca48aaf8bda67cd0ef3fd25ed0dfc12e2dd88e5a2bc8dae69abbadb44b2fa5195802f9925681a452f54916daa268adb20e8c8cd
|
||||||
|
Loading…
Reference in New Issue
Block a user