[Bug 30069] New: MSDE2000A fails due to NtCreatePort being a stub
http://bugs.winehq.org/show_bug.cgi?id=30069 Bug #: 30069 Summary: MSDE2000A fails due to NtCreatePort being a stub Product: Wine Version: 1.4-rc5 Platform: x86 URL: http://www.microsoft.com/download/en/details.aspx?id=2 2661 OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: ntdll AssignedTo: wine-bugs(a)winehq.org ReportedBy: djelinski1(a)gmail.com Classification: Unclassified Created attachment 39177 --> http://bugs.winehq.org/attachment.cgi?id=39177 log of setup.exe in wine 1.4-rc5 To reproduce: Download and run the MSDE installer MSDE2000A.EXE from http://www.microsoft.com/download/en/details.aspx?id=22661 This will unpack to directory c:\MSDERelA. Go to that directory, then run setup.exe SAPWD=Hello It will install MSSQLServer service and attempt to start it. The service will fail to start, and the installer will subsequently (after ca.2 minutes) remove all installed files. I managed to reproduce it faster via interrupting the installer before it has a chance to remove the service - after that starting any wine application triggers the bug. NtCreatePort is a part of undocumented Microsoft API called LPC. Some attempts at documenting it can be found via google, e.g.: http://www.zezula.net/en/prog/lpc.html http://blogs.msdn.com/b/ntdebugging/archive/2007/07/26/lpc-local-procedure-c... -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email Do not reply to this email, post in Bugzilla using the above URL to reply. ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=30069 Dmitry Timoshkov <dmitry(a)baikal.ru> changed: What |Removed |Added ---------------------------------------------------------------------------- Component|ntdll |-unknown Summary|MSDE2000A fails due to |Microsoft SQL Server 2000 |NtCreatePort being a stub |Desktop Engine (MSDE 2000) | |Release A fails to install --- Comment #1 from Dmitry Timoshkov <dmitry(a)baikal.ru> 2012-03-04 01:40:15 CST --- Unlikely to be fixed if it's completely undocumented and being so low level functionality. -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email Do not reply to this email, post in Bugzilla using the above URL to reply. ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=30069 Anastasius Focht <focht(a)gmx.net> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download Status|UNCONFIRMED |NEW CC| |focht(a)gmx.net Component|-unknown |ntdll Summary|Microsoft SQL Server 2000 |Microsoft SQL Server 2000 |Desktop Engine (MSDE 2000) |Desktop Engine (MSDE 2000) |Release A fails to install |Release A needs LPC for | |shared memory | |communications | |(NtCreatePort and friends) Ever Confirmed|0 |1 --- Comment #2 from Anastasius Focht <focht(a)gmx.net> 2012-03-04 03:14:24 CST --- Hello, the bug reporter is right, the SQL server engine uses LPC for shared memory communications (when client and server processes are running on the same machine). --- snip --- 000f:Call KERNEL32.CreateProcessW(00000000,00119120 L"C:\\MSSQL\\Binn\\sqlservr.exe -sMSSQLSERVER",00000000,00000000,00000000,00000400,00540000,00000000,0033fc58,0033fc9c) ret=7eda160b ... 000f:Ret KERNEL32.CreateProcessW() retval=00000001 ret=7eda160b ... 0036:Call KERNEL32.LoadLibraryA(42cd4000 "ntdll.dll") ret=42cd115b 0036:Ret KERNEL32.LoadLibraryA() retval=7bc10000 ret=42cd115b 0036:Call KERNEL32.GetProcAddress(7bc10000,42cd400c "NtCreatePort") ret=42cd1178 0036:Ret KERNEL32.GetProcAddress() retval=7bc20edc ret=42cd1178 0036:Call KERNEL32.GetProcAddress(7bc10000,42cd401c "NtConnectPort") ret=42cd119a 0036:Ret KERNEL32.GetProcAddress() retval=7bc20dd4 ret=42cd119a 0036:Call KERNEL32.GetProcAddress(7bc10000,42cd402c "NtListenPort") ret=42cd11bc 0036:Ret KERNEL32.GetProcAddress() retval=7bc21194 ret=42cd11bc 0036:Call KERNEL32.GetProcAddress(7bc10000,42cd403c "NtAcceptConnectPort") ret=42cd11de 0036:Ret KERNEL32.GetProcAddress() retval=7bc20c0c ret=42cd11de 0036:Call KERNEL32.GetProcAddress(7bc10000,42cd4050 "NtCompleteConnectPort") ret=42cd1200 0036:Ret KERNEL32.GetProcAddress() retval=7bc20dbc ret=42cd1200 0036:Call KERNEL32.GetProcAddress(7bc10000,42cd4068 "NtReplyWaitReceivePort") ret=42cd1222 0036:Ret KERNEL32.GetProcAddress() retval=7bc21884 ret=42cd1222 0036:Call KERNEL32.GetProcAddress(7bc10000,42cd4080 "NtReplyPort") ret=42cd1244 0036:Ret KERNEL32.GetProcAddress() retval=7bc1eb3c ret=42cd1244 0036:Call KERNEL32.GetProcAddress(7bc10000,42cd408c "NtRequestPort") ret=42cd1266 0036:Ret KERNEL32.GetProcAddress() retval=7bc1ebc0 ret=42cd1266 0036:Call KERNEL32.GetProcAddress(7bc10000,42cd409c "NtRequestWaitReplyPort") ret=42cd1285 0036:Ret KERNEL32.GetProcAddress() retval=7bc2189c ret=42cd1285 0036:Call KERNEL32.GetProcAddress(7bc10000,42cd40b4 "NtImpersonateClientOfPort") ret=42cd12a4 0036:Ret KERNEL32.GetProcAddress() retval=7bc1e8d4 ret=42cd12a4 0036:Call KERNEL32.GetProcAddress(7bc10000,42cd40d0 "NtClose") ret=42cd12c3 0036:Ret KERNEL32.GetProcAddress() retval=7bc20da4 ret=42cd12c3 0036:Call KERNEL32.FreeLibrary(7bc10000) ret=42cd12dd 0036:Ret KERNEL32.FreeLibrary() retval=00000001 ret=42cd12dd 0036:Call KERNEL32.MultiByteToWideChar(00000000,00000000,031eaf14 "\\BaseNamedObjects\\Global\\NEXUS4MSSQLSERVER",ffffffff,031ead0c,00000104) ret=42cd15c3 0036:Ret KERNEL32.MultiByteToWideChar() retval=0000002b ret=42cd15c3 0036:Call ntdll.wcslen(031ead0c L"\\BaseNamedObjects\\Global\\NEXUS4MSSQLSERVER") ret=42cd15de 0036:Ret ntdll.wcslen() retval=0000002a ret=42cd15de 0036:Call ntdll.NtCreatePort(00140014,031eb01c,00000000,00000038,00080000) ret=42cd1654 0036:fixme:ntdll:NtCreatePort (0x140014,0x31eb01c,0,56,0x80000),stub! 0036:Ret ntdll.NtCreatePort() retval=c0000002 ret=42cd1654 0036:Call KERNEL32.GetLastError() ret=42cd1996 0036:Ret KERNEL32.GetLastError() retval=00002747 ret=42cd1996 0036:RET SSmsLPCn.ConnectionListen() retval=00000000 ret=42cf5c30 0036:Call msvcrt.free(00140010) ret=42cf5c6c 0036:Call ntdll.RtlFreeHeap(00110000,00000000,00140010) ret=7ea1d3d0 0036:Ret ntdll.RtlFreeHeap() retval=00000001 ret=7ea1d3d0 000d:Ret KERNEL32.LoadLibraryExW() retval=00000000 ret=7ed9e127 0036:Ret msvcrt.free() retval=00000001 ret=42cf5c6c 000d:Call ntdll.RtlFreeHeap(00110000,00000000,00000000) ret=7ed9e9d1 000d:Ret ntdll.RtlFreeHeap() retval=00000001 ret=7ed9e9d1 000d:Call ntdll.RtlFreeHeap(00110000,00000000,00000000) ret=7ed9e9fb 000d:Ret ntdll.RtlFreeHeap() retval=00000001 ret=7ed9e9fb 0036:Call advapi32.ReportEventA(cafe4242,00000001,00000008,c0004a43,00000000,00000001,00000000,031eb02c ",\xaf\x1e\x03X\xb0\x1e\x03\x9e\\\xcfBP\xc0\x13",00000000) ret=42cf5b96 000d:Call ntdll.RtlFreeHeap(00110000,00000000,00000000) ret=7ed9ea25 000d:Ret ntdll.RtlFreeHeap() retval=00000001 ret=7ed9ea25 0036:fixme:advapi:ReportEventA (0xcafe4242,0x0001,0x0008,0xc0004a43,(nil),0x0001,0x00000000,0x31eb02c,(nil)): stub 000d:Call KERNEL32.LoadLibraryExW(7edaa25c L"user32",00000000,00000002) ret=7ed9e127 0036:fixme:advapi:ReportEventW (0xcafe4242,0x0001,0x0008,0xc0004a43,(nil),0x0001,0x00000000,0x12db70,(nil)): stub 0036:err:eventlog:ReportEventW L"ConnectionListen(Shared-Memory (LPC)) : Error 10055" 0036:Ret advapi32.ReportEventA() retval=00000001 ret=42cf5b96 --- snip --- Server log file: --- snip --- ... 2012-03-04 09:51:02.68 server Using 'SSNETLIB.DLL' version '8.0.766'. 2012-03-04 09:51:02.69 spid5 Clearing tempdb database. 2012-03-04 09:51:02.70 server SQL server listening on . 2012-03-04 09:51:02.70 server Error: 17826, Severity: 18, State: 1 2012-03-04 09:51:02.70 server Could not set up Net-Library 'SSNETLIB'.. 2012-03-04 09:51:02.70 server Unable to load any netlibs. 2012-03-04 09:51:02.70 server SQL Server could not spawn FRunCM thread. --- snip --- Not sure if LPC is a strict requirement for the SQL server/service start. SQL supports named pipe and TCP besides "shared memory" (LPC). Regards -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email Do not reply to this email, post in Bugzilla using the above URL to reply. ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=30069 Anastasius Focht <focht(a)gmx.net> changed: What |Removed |Added ---------------------------------------------------------------------------- Blocks| |17785 -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email Do not reply to this email, post in Bugzilla using the above URL to reply. ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=30069 --- Comment #3 from Daniel Jelinski <djelinski1(a)gmail.com> 2012-03-17 02:55:38 CDT --- Hello, By default LPC is required to start sql server service. However, when the installer is started by: wine setup.exe sapwd=xxx disablenetworkprotocols=0 the service starts listening on TCP ports. Unfortunately the end result (installation rolled back) does not change. If the installer is terminated before rollback, the MSSQL service is runnable. However I was not able to log in. I tried the specified password (login failed for user sa) and integrated security (login failed for user (null). Reason: Not associated with a trusted SQL Server connection). Additionally, when attempting to log in using integrated security, the following line appeared in the log: fixme:ntlm:ntlm_AcquireCredentialsHandleW AcquireCredentialsHandle: SECPKG_CRED_BOTH stub, -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email Do not reply to this email, post in Bugzilla using the above URL to reply. ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=30069 --- Comment #4 from Daniel Jelinski <djelinski1(a)gmail.com> 2012-03-17 07:16:05 CDT --- Update: I was able to connect from mono develop to sql server by supplying empty password for user sa. Simple queries seem to work. -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email Do not reply to this email, post in Bugzilla using the above URL to reply. ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=30069 Daniel Jelinski <djelinski1(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |ipc --- Comment #5 from Daniel Jelinski <djelinski1(a)gmail.com> 2012-09-08 13:46:09 CDT --- There's an example application (source code) using this api here: http://www.zezula.net/download/lpc.zip I can't test it here, but the code looks legit. -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email Do not reply to this email, post in Bugzilla using the above URL to reply. ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=30069 iav(a)iav.lv changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |iav(a)iav.lv -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email Do not reply to this email, post in Bugzilla using the above URL to reply. ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=30069 --- Comment #6 from iav(a)iav.lv 2012-11-26 16:13:00 CST --- (In reply to comment #3)
Hello, By default LPC is required to start sql server service. However, when the installer is started by: wine setup.exe sapwd=xxx disablenetworkprotocols=0 the service starts listening on TCP ports. Unfortunately the end result (installation rolled back) does not change. If the installer is terminated before rollback, the MSSQL service is runnable.
How can I get that setup? When and how can I interrupt setup - and how to run service later? -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email Do not reply to this email, post in Bugzilla using the above URL to reply. ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=30069 --- Comment #7 from Daniel Jelinski <djelinski1(a)gmail.com> 2012-11-26 16:29:21 CST --- (In reply to comment #6)
How can I get that setup? When and how can I interrupt setup - and how to run service later?
I posted the details in my appdb report here: http://appdb.winehq.org/objectManager.php?sClass=version&iId=11016&iTestingI... -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email Do not reply to this email, post in Bugzilla using the above URL to reply. ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=30069 --- Comment #8 from Daniel Jelinski <djelinski1(a)gmail.com> 2012-12-09 15:42:11 CST --- According to MSDN, Shared memory is required by SQL Server 2000 installer: "The failure is prohibitive to a SQL Server 2000 setup. A SQL Server 2000 setup prevents external connections by only allowing the shared network library connections. If a shared memory connection can not be established, the setup fails when it attempts to configure the SQL Server server." [http://support.microsoft.com/kb/285100] My tests seems to confirm that; the installer uses odbc to connect to an instance of SQL Server. I tried using UnixOdbc+tdsodbc and native odbc (from winetricks mdac28 jet40) with tcp/ip and named pipes, and all of these were disconnected by the server after exchanging roughly 2 packets. (Named pipes didn't work with plain Wine, they require at least SetNamedPipeHandleState. I used Adam Martinson's patches from bug 17195). -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email Do not reply to this email, post in Bugzilla using the above URL to reply. ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=30069 Ken Sharp <imwellcushtymelike(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |imwellcushtymelike(a)gmail.co | |m -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=30069 Brandon Corujo <haku08879(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |haku08879(a)gmail.com -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=30069 Anastasius Focht <focht(a)gmx.net> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords|ipc | --- Comment #9 from Anastasius Focht <focht(a)gmx.net> --- Hello folks, I'm removing the 'ipc' keyword here since it's the only bug report left using this keyword. It was never properly used in the past and more than 100+ bugs would need to be tagged if taken seriously (from my own analysis experience). Daniel, you could give wine-staging project a try which carries the current "state-of-the-art" named pipe patchset -> https://github.com/wine-compholio/wine-staging Regards -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=30069 Sebastian Lackner <sebastian(a)fds-team.de> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |sebastian(a)fds-team.de -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=30069 Anastasius Focht <focht(a)gmx.net> changed: What |Removed |Added ---------------------------------------------------------------------------- URL|http://www.microsoft.com/do |https://web.archive.org/web |wnload/en/details.aspx?id=2 |/20101225105840/http://down |2661 |load.microsoft.com/download | |/d/5/4/d5402c33-65de-4464-9 | |d82-d1de2971d9db/MSDE2000A. | |exe --- Comment #10 from Anastasius Focht <focht(a)gmx.net> --- Hello folks, adding stable download link via Internet Archive: https://web.archive.org/web/20101225105840/http://download.microsoft.com/dow... $ sha1sum MSDE2000A.exe 84967a13671758c9e7cd2b19cdb60cce634cd869 MSDE2000A.exe $ du -sh MSDE2000A.exe 43M MSDE2000A.exe Obviously still present. Not that it matters much: it fails a bit earlier now due to https://source.winehq.org/git/wine.git/commitdiff/52202224d9ab8316896370db2a... ("ntdll: Comment out stubs for Nt and Zw functions. ") https://source.winehq.org/git/wine.git/blob/20f1a677b664b3d0d3dc038ffb9ab4f4... --- snip --- $ pwd /home/focht/.wine/drive_c/MSSQL/Binn $ WINEDEBUG=+seh,+relay wine sqlservr.exe -sMSSQLSERVER >>log.txt 2>&1 00dc:Call KERNEL32.LoadLibraryA(42cd4000 "ntdll.dll") ret=42cd115b ... 00dc:Call ntdll.LdrLoadDll(0026d308 L"C:\\MSSQL\\Binn;C:\\windows\\system32;C:\\windows\\system;C:\\windows;.;C:\\windows\\system32;C:\\windows;C:\\windows\\system32\\wbem;C:\\windows\\system32\\WindowsPowershell\\v1.0;C:\\Program Files\\Microsoft SQL Server\\80\\Tools\\Binn\\",00000000,03cdbf80,03cdbf68) ret=7b01c14d 00dc:Ret ntdll.LdrLoadDll() retval=00000000 ret=7b01c14d 00dc:Call ntdll.RtlReleasePath(0026d308) ret=7b01c1af 00dc:Ret ntdll.RtlReleasePath() retval=00000001 ret=7b01c1af 00dc:Ret KERNEL32.LoadLibraryA() retval=7bc00000 ret=42cd115b 00dc:Call KERNEL32.GetProcAddress(7bc00000,42cd400c "NtCreatePort") ret=42cd1178 00dc:Ret KERNEL32.GetProcAddress() retval=7bc02c0c ret=42cd1178 00dc:Call KERNEL32.GetProcAddress(7bc00000,42cd401c "NtConnectPort") ret=42cd119a 00dc:Ret KERNEL32.GetProcAddress() retval=7bc02a0c ret=42cd119a 00dc:Call KERNEL32.GetProcAddress(7bc00000,42cd402c "NtListenPort") ret=42cd11bc 00dc:Ret KERNEL32.GetProcAddress() retval=7bc030ec ret=42cd11bc 00dc:Call KERNEL32.GetProcAddress(7bc00000,42cd403c "NtAcceptConnectPort") ret=42cd11de 00dc:Ret KERNEL32.GetProcAddress() retval=7bc0276c ret=42cd11de 00dc:Call KERNEL32.GetProcAddress(7bc00000,42cd4050 "NtCompleteConnectPort") ret=42cd1200 00dc:Ret KERNEL32.GetProcAddress() retval=7bc029ec ret=42cd1200 00dc:Call KERNEL32.GetProcAddress(7bc00000,42cd4068 "NtReplyWaitReceivePort") ret=42cd1222 00dc:Ret KERNEL32.GetProcAddress() retval=7bc03bcc ret=42cd1222 00dc:Call KERNEL32.GetProcAddress(7bc00000,42cd4080 "NtReplyPort") ret=42cd1244 00dc:Ret KERNEL32.GetProcAddress() retval=00000000 ret=42cd1244 00dc:Call KERNEL32.FreeLibrary(7bc00000) ret=42cd12fe 00dc:Call ntdll.LdrUnloadDll(7bc00000) ret=7b01b97f 00dc:Ret ntdll.LdrUnloadDll() retval=00000000 ret=7b01b97f 00dc:Ret KERNEL32.FreeLibrary() retval=00000001 ret=42cd12fe 00dc:Call KERNEL32.GetLastError() ret=42cd1996 00dc:Ret KERNEL32.GetLastError() retval=0000007f ret=42cd1996 ... 00dc:Call advapi32.ReportEventA(cafe4242,00000001,00000008,c0004a43,00000000,00000001,00000000,03cdc53c,00000000) ret=42cf5b96 00dc:fixme:advapi:ReportEventA (CAFE4242,0x0001,0x0008,0xc0004a43,00000000,0x0001,0x00000000,03CDC53C,00000000): stub 00dc:fixme:advapi:ReportEventW (CAFE4242,0x0001,0x0008,0xc0004a43,00000000,0x0001,0x00000000,0026CEB0,00000000): stub 00dc:err:eventlog:ReportEventW L"ConnectionListen(Shared-Memory (LPC)) : Error 127" 00dc:Ret advapi32.ReportEventA() retval=00000001 ret=42cf5b96 ... --- snip --- $ wine --version wine-6.21 Regards -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=30069 Anastasius Focht <focht(a)gmx.net> changed: What |Removed |Added ---------------------------------------------------------------------------- Blocks|17785 | -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
participants (2)
-
wine-bugs@winehq.org -
WineHQ Bugzilla