[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[pkg-wine-party] Bug#796082: marked as done ([wine-development] Office 2010 - Regression with 1.7.49-1)



Your message dated Sun, 23 Aug 2015 22:20:21 +0000
with message-id <E1ZTdcj-0000BZ-99@franck.debian.org>
and subject line Bug#796082: fixed in wine-development 1.7.50-1
has caused the Debian Bug report #796082,
regarding [wine-development] Office 2010 - Regression with 1.7.49-1
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
796082: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=796082
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: wine-development
Version: 1.7.49-1
Severity: normal
Tags: patch

--- Please enter the report below this line. --- 

Dear maintainer,

There was a regression introduced in Wine 1.7.49 that make Office 2010 unusable. It opens the installer configuration screen at startup and then crash.

This was reported upstream [0] and fixed in commit 38076fa63308417429617f959ce44315b604424c 

I attached the patch from the above if you want to apply it, or wait for 1.7.50 as it will be included. 

In the meantime I reverted to wine-development 1.7.48-1 from snapshot.debian.org

Cheers
Letic

[0] : https://bugs.winehq.org/show_bug.cgi?id=39040

--- System information. ---
Architecture: amd64
Kernel: Linux 4.1.0-1-amd64

Debian Release: stretch/sid
700 stable download.videolan.org
700 stable dl.google.com
650 testing ftp.ch.debian.org
600 unstable snapshot.debian.org
600 unstable ftp.ch.debian.org

--- Package information. ---
Depends (Version) | Installed
=====================================-+-===============
wine64-development (>= 1.7.27-1) | 1.7.49-1
OR wine32-development (>= 1.7.27-1) | 1.7.49-1


Package's Recommends field is empty.

Suggests (Version) | Installed
========================================-+-===========
binfmt-support | 2.1.5-1
ttf-mscorefonts-installer | 3.6
From 38076fa63308417429617f959ce44315b604424c Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Mon, 10 Aug 2015 18:31:56 +0200
Subject: [PATCH] ntdll: Move cookie initialization code from memory management
 to loader.

---
 dlls/ntdll/loader.c  | 57 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 dlls/ntdll/virtual.c | 49 --------------------------------------------
 2 files changed, 57 insertions(+), 49 deletions(-)

diff --git a/dlls/ntdll/loader.c b/dlls/ntdll/loader.c
index 0e91af4..d15b140 100644
--- a/dlls/ntdll/loader.c
+++ b/dlls/ntdll/loader.c
@@ -50,6 +50,12 @@ WINE_DECLARE_DEBUG_CHANNEL(snoop);
 WINE_DECLARE_DEBUG_CHANNEL(loaddll);
 WINE_DECLARE_DEBUG_CHANNEL(imports);
 
+#ifdef _WIN64
+#define DEFAULT_SECURITY_COOKIE_64  (((ULONGLONG)0x00002b99 << 32) | 0x2ddfa232)
+#endif
+#define DEFAULT_SECURITY_COOKIE_32  0xbb40e64e
+#define DEFAULT_SECURITY_COOKIE_16  (DEFAULT_SECURITY_COOKIE_32 >> 16)
+
 /* we don't want to include winuser.h */
 #define RT_MANIFEST                         ((ULONG_PTR)24)
 #define ISOLATIONAWARE_MANIFEST_RESOURCE_ID ((ULONG_PTR)2)
@@ -1602,6 +1608,55 @@ static void load_builtin_callback( void *module, const char *filename )
 }
 
 
+/***********************************************************************
+ *           set_security_cookie
+ *
+ * Create a random security cookie for buffer overflow protection. Make
+ * sure it does not accidentally match the default cookie value.
+ */
+static void set_security_cookie( void *module, SIZE_T len )
+{
+    static ULONG seed;
+    IMAGE_LOAD_CONFIG_DIRECTORY *loadcfg;
+    ULONG loadcfg_size;
+    ULONG_PTR *cookie;
+
+    loadcfg = RtlImageDirectoryEntryToData( module, TRUE, IMAGE_DIRECTORY_ENTRY_LOAD_CONFIG, &loadcfg_size );
+    if (!loadcfg) return;
+    if (loadcfg_size < offsetof(IMAGE_LOAD_CONFIG_DIRECTORY, SecurityCookie) + sizeof(loadcfg->SecurityCookie)) return;
+    if (!loadcfg->SecurityCookie) return;
+    if (loadcfg->SecurityCookie < (ULONG_PTR)module ||
+        loadcfg->SecurityCookie > (ULONG_PTR)module + len - sizeof(ULONG_PTR))
+    {
+        WARN( "security cookie %p outside of image %p-%p\n",
+              (void *)loadcfg->SecurityCookie, module, (char *)module + len );
+        return;
+    }
+
+    cookie = (ULONG_PTR *)loadcfg->SecurityCookie;
+    TRACE( "initializing security cookie %p\n", cookie );
+
+    if (!seed) seed = NtGetTickCount() ^ GetCurrentProcessId();
+    for (;;)
+    {
+        if (*cookie == DEFAULT_SECURITY_COOKIE_16)
+            *cookie = RtlRandom( &seed ) >> 16; /* leave the high word clear */
+        else if (*cookie == DEFAULT_SECURITY_COOKIE_32)
+            *cookie = RtlRandom( &seed );
+#ifdef DEFAULT_SECURITY_COOKIE_64
+        else if (*cookie == DEFAULT_SECURITY_COOKIE_64)
+        {
+            *cookie = RtlRandom( &seed );
+            /* fill up, but keep the highest word clear */
+            *cookie ^= (ULONG_PTR)RtlRandom( &seed ) << 16;
+        }
+#endif
+        else
+            break;
+    }
+}
+
+
 /******************************************************************************
  *	load_native_dll  (internal)
  */
@@ -1636,6 +1691,8 @@ static NTSTATUS load_native_dll( LPCWSTR load_path, LPCWSTR name, HANDLE file,
         goto done;
     }
 
+    set_security_cookie( module, len );
+
     /* fixup imports */
 
     nt = RtlImageNtHeader( module );
diff --git a/dlls/ntdll/virtual.c b/dlls/ntdll/virtual.c
index 676675f..fe17518 100644
--- a/dlls/ntdll/virtual.c
+++ b/dlls/ntdll/virtual.c
@@ -61,12 +61,6 @@ WINE_DECLARE_DEBUG_CHANNEL(module);
 #define MAP_NORESERVE 0
 #endif
 
-#ifdef _WIN64
-#define DEFAULT_SECURITY_COOKIE_64  (((ULONGLONG)0x00002b99 << 32) | 0x2ddfa232)
-#endif
-#define DEFAULT_SECURITY_COOKIE_32  0xbb40e64e
-#define DEFAULT_SECURITY_COOKIE_16  (DEFAULT_SECURITY_COOKIE_32 >> 16)
-
 /* File view */
 struct file_view
 {
@@ -1060,37 +1054,6 @@ static NTSTATUS stat_mapping_file( struct file_view *view, struct stat *st )
 }
 
 /***********************************************************************
- *           set_security_cookie
- *
- * Create a random security cookie for buffer overflow protection. Make
- * sure it does not accidentally match the default cookie value.
- */
-static void set_security_cookie(ULONG_PTR *cookie)
-{
-    static ULONG seed;
-
-    if (!cookie) return;
-    if (!seed) seed = NtGetTickCount() ^ GetCurrentProcessId();
-    while (1)
-    {
-        if (*cookie == DEFAULT_SECURITY_COOKIE_16)
-            *cookie = RtlRandom( &seed ) >> 16; /* leave the high word clear */
-        else if (*cookie == DEFAULT_SECURITY_COOKIE_32)
-            *cookie = RtlRandom( &seed );
-#ifdef DEFAULT_SECURITY_COOKIE_64
-        else if (*cookie == DEFAULT_SECURITY_COOKIE_64)
-        {
-            *cookie = RtlRandom( &seed );
-            /* fill up, but keep the highest word clear */
-            *cookie ^= (ULONG_PTR)RtlRandom( &seed ) << 16;
-        }
-#endif
-        else
-            break;
-    }
-}
-
-/***********************************************************************
  *           map_image
  *
  * Map an executable (PE format) image into memory.
@@ -1103,8 +1066,6 @@ static NTSTATUS map_image( HANDLE hmapping, int fd, char *base, SIZE_T total_siz
     IMAGE_SECTION_HEADER sections[96];
     IMAGE_SECTION_HEADER *sec;
     IMAGE_DATA_DIRECTORY *imports;
-    IMAGE_LOAD_CONFIG_DIRECTORY *loadcfg;
-    ULONG loadcfg_size;
     NTSTATUS status = STATUS_CONFLICTING_ADDRESSES;
     int i;
     off_t pos;
@@ -1316,16 +1277,6 @@ static NTSTATUS map_image( HANDLE hmapping, int fd, char *base, SIZE_T total_siz
         }
     }
 
-    /* randomize security cookie */
-
-    loadcfg = RtlImageDirectoryEntryToData( (HMODULE)ptr, TRUE,
-                                            IMAGE_DIRECTORY_ENTRY_LOAD_CONFIG, &loadcfg_size );
-    if (loadcfg && loadcfg_size >= offsetof(IMAGE_LOAD_CONFIG_DIRECTORY, SecurityCookie) + sizeof(loadcfg->SecurityCookie) &&
-        (ULONG_PTR)ptr <= loadcfg->SecurityCookie && loadcfg->SecurityCookie <= (ULONG_PTR)ptr + total_size - sizeof(ULONG_PTR))
-    {
-        set_security_cookie((ULONG_PTR *)loadcfg->SecurityCookie);
-    }
-
     /* set the image protections */
 
     VIRTUAL_SetProt( view, ptr, ROUND_SIZE( 0, header_size ), VPROT_COMMITTED | VPROT_READ );
-- 
2.5.0


--- End Message ---
--- Begin Message ---
Source: wine-development
Source-Version: 1.7.50-1

We believe that the bug you reported is fixed in the latest version of
wine-development, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 796082@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Michael Gilbert <mgilbert@debian.org> (supplier of updated wine-development package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Format: 1.8
Date: Sun, 23 Aug 2015 21:36:32 +0000
Source: wine-development
Binary: wine-development wine32-development wine64-development wine32-development-preloader wine64-development-preloader wine32-development-tools wine64-development-tools fonts-wine-development libwine-development libwine-development-dev libwine-development-dbg
Architecture: source all
Version: 1.7.50-1
Distribution: unstable
Urgency: medium
Maintainer: Debian Wine Party <pkg-wine-party@lists.alioth.debian.org>
Changed-By: Michael Gilbert <mgilbert@debian.org>
Description:
 fonts-wine-development - Windows API implementation - fonts
 libwine-development - Windows API implementation - library
 libwine-development-dbg - Windows API implementation - debugging symbols
 libwine-development-dev - Windows API implementation - development files
 wine-development - Windows API implementation - standard suite
 wine32-development - Windows API implementation - 32-bit binary loader
 wine32-development-preloader - Windows API implementation - prelinked 32-bit binary loader
 wine32-development-tools - Windows API implementation - 32-bit developer tools
 wine64-development - Windows API implementation - 64-bit binary loader
 wine64-development-preloader - Windows API implementation - prelinked 64-bit binary loader
 wine64-development-tools - Windows API implementation - 64-bit developer tools
Closes: 796082
Changes:
 wine-development (1.7.50-1) unstable; urgency=medium
 .
   * New upstream release 1.7.50, released Aug 21, 2015.
     - Regression in Office 2010 fixed (closes: #796082).
     - First steps of the Direct3D 11 implementation.
     - Better font matching in DirectWrite.
     - Support for OpenMP on ARM platforms.
     - Various bug fixes.
Checksums-Sha1:
 84a5cb01674ec9699057b8132a8c390e7cc22747 4474 wine-development_1.7.50-1.dsc
 dc616977bbad84bf6bf2073191c98c719aa62736 22277147 wine-development_1.7.50.orig.tar.bz2
 38c9d3db60eb340d848cf0842ed1f66c18533443 67368 wine-development_1.7.50-1.debian.tar.xz
 8a69466c9d443b93554495337a71ce3401610c57 210544 fonts-wine-development_1.7.50-1_all.deb
 2e1a9e88067f821981b99aa4fc7890a2a882b2e7 90820 wine-development_1.7.50-1_all.deb
Checksums-Sha256:
 bdab3a2eef1323d7cdd95080486eb798d37c8bfe568cefe5e38a965afe0612ef 4474 wine-development_1.7.50-1.dsc
 04f1f2b10525721590229ff5b388c83872ee940bc9edd796eb61717eebdc6973 22277147 wine-development_1.7.50.orig.tar.bz2
 65bec6837f328e13726ef740243b05a52e30203715df52ca41e9969ec2164899 67368 wine-development_1.7.50-1.debian.tar.xz
 45618670e4f5846229eba994e72cea47e160d21073e6024329ea57a8fa97c0f7 210544 fonts-wine-development_1.7.50-1_all.deb
 fc75126abc4553a69542bbe32352af76f5fd1196d48f01a0b5627234ab92f7a9 90820 wine-development_1.7.50-1_all.deb
Files:
 d3c724d78aa919858d9661529bb93215 4474 otherosfs optional wine-development_1.7.50-1.dsc
 ee21d04b2574e153435a36452461d27c 22277147 otherosfs optional wine-development_1.7.50.orig.tar.bz2
 edde1c72e0312c7ac5e319af0e71943c 67368 otherosfs optional wine-development_1.7.50-1.debian.tar.xz
 61316fc1040b3c95a1dbc504dfdc7f75 210544 fonts optional fonts-wine-development_1.7.50-1_all.deb
 67254502223c3b742345bd22c5a149a4 90820 otherosfs optional wine-development_1.7.50-1_all.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iQQcBAEBCgAGBQJV2kSLAAoJELjWss0C1vRznlMf/2RXMXFU3TFwHHfq6YBPikSc
jNUMPX092K1L6zeArgxCXGp+1Agkwbs8vFukNHFCRDaCrVzYNBE1LXMlEhgOXrwO
irbxbPqDHVRWAQsIzmv0WH+DG+2u3koDQZhqhtqpR90OnjYvcPOGzvzTzNtN9+pl
9MvT5kqStFygRKR1i743egQ8LhYrt+o625yeod8qJ4WVsiqra8ENBCG428aGVtTK
ffuZztr89IRJ8wS7zKKysIulS4VH8ZTAWLIyZAscTmcU0KYblNfveqMrCjXOdtk0
N9ODThQxTdfqI3OoGR/Iqrh5bhZkgm1n/obtOVeDTFFB+LbhfzpXIzK15bbRX3+q
Wr8PmJqyMgBYcC6/WcH/MlTbvudCxXKZ7cWlmz7l04OhSITa7YMEk4DdSzdbvJsY
dwH33yMSmyGAE/8SU+JjCKwWwB+1Fqmvcya1rqBXHnJtFTA8qFNQXbAu+zYr5ulj
8jxykPj0odkXteaSqSK4bUVAhZQ4ul9eETorwCMW8YHq78RL+KUexHq4uhMk4Axi
H9D3+kplz+et7XkQruf6AiyYvdjMmOfTj4EwGsYBsClfiznDCqCdz/QaYUZvDkEi
Tkl8YyL8R5GoHnfBkqW7otU7pJxeOmezMhKDfywr+apkJ1xK++1QdOJJYls+sK4w
+OM2uD0ICyaxK9L1mEnWQiZUvv0DIowfQlXoxsJPy5FPmhB/VdjlLfESyQyVsLyF
lKHtZd15D4NHDAGZzWkui3DzAC0qaVV/Dzv31QgNGk0+Cm9vbt3DimC10AWe9O51
XOHl+eRD6IxyHCDVfPEFPAnnnmhxMqkBueeOgd5wnncnmvlYxWh7xx6SnkEJhgOg
Ovon5EBLfnZPvHVCEPYEdFY+8bpbCRT8KNEaNZ2R3nO7HOa7lj2RRxFZcV63DmIa
gc2vRGPAI60PfRSfar5y6n5rhIqBGZr34yZOmoOSLFxxwYpyxYxZS3kJLxhfT86x
yGq6BvWSYji7IxuF91q0hE1slmwAE5SRsf+LgvG43Apo+zwFXig0O2BKnWz1JEPw
I8sB27yaxnxqALypu4mP8O294IeXTIRty/FQgcRWsYNbpirXkrD6TdhMjyiCvzWO
wotWrt5IaZdFGm+Tnbm7GiR1StJ82MNP8kxAguvKCQdphdu6tJZHjYlpTkDHHPwl
dhHksTIXFkzBlQJWpg0iCKxii9bY9UfdYHiow7W9IwxLI5lAbN/p6rOzJpBR/9/7
MvVm5+X/oC2FuR8a4vbMnTt4gxbQtgsDCxKjhb0to/kFH+Puny6kmZ/bOMJ7YTU2
zs6/60v6N3iK8J7rw3IgDqyPcUNf0Xi0RNHvCggk13u8XV7aVIZWS9aDH1CIH1o=
=cTYP
-----END PGP SIGNATURE-----

--- End Message ---

Reply to: