https://bugs.winehq.org/show_bug.cgi?id=41934
Bug ID: 41934 Summary: Spreaker Studio 1.4.2 fails to install Product: Wine Version: 1.9.23 Hardware: x86 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@winehq.org Reporter: bob.mt.wya@gmail.com Distribution: ---
This pplication is request from a WineHQ forum member.
No overrides used.
Stock console log was not very enlightening, so set: export WINEDEBUG=+timestamp,+tid,+all
Application tested in a clean 32-bit Wineprefix. Wine Windows version set to Windows 7 (the application does not support earlier versions of Windows).
The application installer fails immediately - with no error message.
https://bugs.winehq.org/show_bug.cgi?id=41934
Robert Walker bob.mt.wya@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- URL| |https://www.spreaker.com/do | |wnload
https://bugs.winehq.org/show_bug.cgi?id=41934
Sagawa sagawa.aki+winebugs@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |sagawa.aki+winebugs@gmail.c | |om
--- Comment #1 from Sagawa sagawa.aki+winebugs@gmail.com --- Thanks reporting. I'll take a look.
https://bugs.winehq.org/show_bug.cgi?id=41934
--- Comment #2 from Sagawa sagawa.aki+winebugs@gmail.com --- I can reproduce the issue. From my point of view, the installer code is very buggy. However, it seems that this is a part of some framework (nupkg related?), I'll try to fix somehow.
Details, please look following code snippet:
0x004022be: leal 0xfffff7e4(%ebp),%eax 0x004022c4: repe movsl (%esi),%es:(%edi) 0x004022c6: pushl %ebx 0x004022c7: pushl %eax 0x004022c8: pushl $0x1 0x004022ca: pushl $0x4237d0 ; = "D:PAI(A;;FA;;;S-1-5-80-956008885-3418522649-1831038044-1853292631-2271478464)(A;CIIO;GA;;;S-1-5-80-956008885-3418522649-1831038044-1853292631-2271478464)(A;;0x1301bf;;;SY)(A;OICIIO;GA;;;SY)(A;;0x1301bf;;;BA)(A;OICIIO;GA;;;BA)(A;;0x1200a9;;;BU)(A;OICIIO;GXGR;;;BU)(A;OICIIO;GA;;;CO)(A;;0x1200a9;;;AC)(A;OICIIO;GXGR;;;AC)" 0x004022cf: movsw (%esi),%es:(%edi) 0x004022d1: call *0x41c020 -> 0x7e9940d0 ConvertStringSecurityDescriptorToSecurityDescriptorW [/home/obfuscated/wine-git/dlls/advapi32/security.c:4738] in advapi32 0x004022d7: movl 0xfffff7e4(%ebp),%eax 0x004022dd: movl %eax,0xfffff7d8(%ebp) 0x004022e3: leal 0xfffff7d4(%ebp),%eax 0x004022e9: pushl %eax 0x004022ea: leal 0xfffffdf4(%ebp),%eax 0x004022f0: movl $0xc,0xfffff7d4(%ebp) 0x004022fa: pushl %eax 0x004022fb: movl %ebx,0xfffff7dc(%ebp) 0x00402301: call *0x41c060 -> 0x7b45e3d0 CreateDirectoryW [/home/obfuscated/wine-git/dlls/kernel32/path.c:1529] in kernel32 0x00402307: movl 0x0041c0ec,%esi 0x0040230d: testl %eax,%eax 0x0040230f: jnz 0x0040232d 0x00402311: call *%esi 0x00402313: cmpl $183,%eax 0x00402318: jz 0x0040232d 0x0040231a: pushl 0xfffff7e4(%ebp) 0x00402320: call *0x41c064 -> 0x7b446f60 LocalFree [/home/obfuscated/wine-git/dlls/kernel32/heap.c:1022] in kernel32 0x00402326: call *%esi 0x00402328: jmp 0x0040246f 0x0040232d: pushl 0xfffff7e4(%ebp) 0x00402333: call *0x41c064 -> 0x7b446f60 LocalFree [/home/obfuscated/wine-git/dlls/kernel32/heap.c:1022] in kernel32
At least, three issues are there:
1. It doesn't verify ConvertStringSecurityDescriptorToSecurityDescriptor's return value. There is no "test %eax, %eax" code after the call. On Windows 7, the call always fails because 'AC' isn't known SID string.
2. The next CreateDirectory call uses invalid SECURITY_DESCRIPTOR (SD) pointer (=0xfffff7d4(%ebp)) instead of obtained SD pointer (=0xfffff7e4(%ebp)) in the previous call.
3. On Windows 7, SD pointer isn't valid due to previous call failure. Even so, it calls LocalFree to release memories.
https://bugs.winehq.org/show_bug.cgi?id=41934
--- Comment #3 from Sagawa sagawa.aki+winebugs@gmail.com --- %sha1sum spreaker-studio-1.4.2-setup.exe ff5fc520cb6bde70934bee466e94ef104aad6cdf spreaker-studio-1.4.2-setup.exe
https://bugs.winehq.org/show_bug.cgi?id=41934
--- Comment #4 from Dmitry Timoshkov dmitry@baikal.ru --- Created attachment 56376 --> https://bugs.winehq.org/attachment.cgi?id=56376 patch
Attached patch makes the directory creation part of the installer work.
The app requires Windows 8+ for installation, and that's the only problem with it, Windows 7 on the downloads page is probably a typo.
https://bugs.winehq.org/show_bug.cgi?id=41934
Dmitry Timoshkov dmitry@baikal.ru changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Ever confirmed|0 |1
--- Comment #5 from Dmitry Timoshkov dmitry@baikal.ru --- And confirming.
https://bugs.winehq.org/show_bug.cgi?id=41934
--- Comment #6 from Sagawa sagawa.aki+winebugs@gmail.com --- The patch looks good to me.
I found out source code of the installer [1]. It seems that the installer doesn't support Windows 7 in per-machine install mode then. So, it's reasonable to add "AC" to known SID string to work correctly.
BTW, I misunderstood Security Descriptor (in ConvertStringSecurityDescriptorToSecurityDescriptorW) and Security Attributes (in CreateDirectoryW) in the previous comment. So, original code makes sense at that point.
[1] https://github.com/Squirrel/Squirrel.Windows/blob/caef279489755bd7024aa3e250...
https://bugs.winehq.org/show_bug.cgi?id=41934
--- Comment #7 from Dmitry Timoshkov dmitry@baikal.ru --- (In reply to Sagawa from comment #6)
The patch looks good to me.
I found out source code of the installer [1]. It seems that the installer doesn't support Windows 7 in per-machine install mode then. So, it's reasonable to add "AC" to known SID string to work correctly.
BTW, I misunderstood Security Descriptor (in ConvertStringSecurityDescriptorToSecurityDescriptorW) and Security Attributes (in CreateDirectoryW) in the previous comment. So, original code makes sense at that point.
[1] https://github.com/Squirrel/Squirrel.Windows/blob/ caef279489755bd7024aa3e250de1f1120f6c993/src/Setup/MachineInstaller.cpp
Thanks for the confirmation. Regarding the patch - I'm not sure whether an existing WinBuiltinAnyPackageSid should be converted to the "AC" alias, or (like my patch does) new WinApplicationPackageAuthoritySid entry should be added to the well-known sid list.
https://bugs.winehq.org/show_bug.cgi?id=41934
--- Comment #8 from Sagawa sagawa.aki+winebugs@gmail.com --- (In reply to Dmitry Timoshkov from comment #7)
Thanks for the confirmation. Regarding the patch - I'm not sure whether an existing WinBuiltinAnyPackageSid should be converted to the "AC" alias, or (like my patch does) new WinApplicationPackageAuthoritySid entry should be added to the well-known sid list.
My test [1] based on dlls/advapi32/tests/security.c shows interesting things: - WinApplicationPackageAuthoritySid (=83) doesn't return valid SID. Because win10 outputs 'security.c:2054: Tests skipped: Well known SID 83 not implemented' that means API call is failed. - WinBuiltinAnyPackageSid(=84) returns S-1-15-2-1 as the test passes.
So, the patch needs to be updated before submitting. Sorry for my hasty judgements.
[1] https://testbot.winehq.org/JobDetails.pl?Key=27352
https://bugs.winehq.org/show_bug.cgi?id=41934
--- Comment #9 from Dmitry Timoshkov dmitry@baikal.ru --- (In reply to Sagawa from comment #8)
(In reply to Dmitry Timoshkov from comment #7)
Thanks for the confirmation. Regarding the patch - I'm not sure whether an existing WinBuiltinAnyPackageSid should be converted to the "AC" alias, or (like my patch does) new WinApplicationPackageAuthoritySid entry should be added to the well-known sid list.
My test [1] based on dlls/advapi32/tests/security.c shows interesting things:
- WinApplicationPackageAuthoritySid (=83) doesn't return valid SID. Because win10 outputs 'security.c:2054: Tests skipped: Well known SID 83
not implemented' that means API call is failed.
- WinBuiltinAnyPackageSid(=84) returns S-1-15-2-1 as the test passes.
So, the patch needs to be updated before submitting. Sorry for my hasty judgements.
"[MS-DTYP]:Windows Data Types" confirms this:
https://msdn.microsoft.com/en-us/library/cc980032.aspx ALL_APP_PACKAGES S-1-15-2-1
and (another page of the same document) https://msdn.microsoft.com/en-us/library/cc230374.aspx "AC" - ALL APP PACKAGES
Essentially: "AC" == WinBuiltinAnyPackageSid
https://bugs.winehq.org/show_bug.cgi?id=41934
Sebastian Lackner sebastian@fds-team.de changed:
What |Removed |Added ---------------------------------------------------------------------------- Staged patchset| |https://github.com/wine-com | |pholio/wine-staging/tree/ma | |ster/patches/advapi32-WinBu | |iltinAnyPackageSid CC| |dmitry@baikal.ru, | |erich.e.hoover@wine-staging | |.com, michael@fds-team.de, | |sebastian@fds-team.de Status|NEW |STAGED
https://bugs.winehq.org/show_bug.cgi?id=41934
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Component|-unknown |advapi32
https://bugs.winehq.org/show_bug.cgi?id=41934
André H. nerv@dawncrow.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |nerv@dawncrow.de Staged patchset|https://github.com/wine-com |https://github.com/wine-sta |pholio/wine-staging/tree/ma |ging/wine-staging/tree/mast |ster/patches/advapi32-WinBu |er/patches/advapi32-WinBuil |iltinAnyPackageSid |tinAnyPackageSid
https://bugs.winehq.org/show_bug.cgi?id=41934
Zebediah Figura z.figura12@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |FIXED CC| |z.figura12@gmail.com Fixed by SHA1| |afaada7e5f454a428795d9ddc8f | |c8f53870d9615 Status|STAGED |RESOLVED
--- Comment #10 from Zebediah Figura z.figura12@gmail.com --- Looks like this was fixed by https://source.winehq.org/git/wine.git/commitdiff/afaada7e5f454a428795d9ddc8....
https://bugs.winehq.org/show_bug.cgi?id=41934
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #11 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 3.18.
https://bugs.winehq.org/show_bug.cgi?id=41934
Michael Stefaniuc mstefani@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|--- |3.0.x
https://bugs.winehq.org/show_bug.cgi?id=41934
Michael Stefaniuc mstefani@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|3.0.x |---
--- Comment #12 from Michael Stefaniuc mstefani@winehq.org --- Removing the 3.0.x milestone from bug fixes included in 3.0.5.
https://bugs.winehq.org/show_bug.cgi?id=41934
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- URL|https://www.spreaker.com/do |https://web.archive.org/web |wnload |/20161211043331/http://down | |load.spreaker.com/studio/sp | |reaker-studio-1.4.2-setup.e | |xe CC| |focht@gmx.net Keywords| |download
https://bugs.winehq.org/show_bug.cgi?id=41934
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |Installer