-
-
Notifications
You must be signed in to change notification settings - Fork 262
Closed
Labels
Description
The crash happens when all conditions below are met:
- Windows client attempts to connect to the some database,
- using local connection string, and
- using login name, and
- not using password, and
- that database is already opened by another process in exclusive mode.
Steps to reproduce:
- Use not modified firebird.conf. Don't start Firebird server.
- run
isql -user sysdba employeein 1st console. Connection should be successful. - run
isql -user sysdba employeein 2nd console - it will crash.
Stack trace
ucrtbase.dll!_invoke_watson()
ucrtbase.dll!_invalid_parameter()
ucrtbase.dll!_invalid_parameter_noinfo()
ucrtbase.dll!_stricmp()
[Inline Frame] fbclient.dll!fb_utils::stricmp() Line 82
at src\common\utils_proto.h(82)
fbclient.dll!`Remote::analyze'::`1'::catch$25() Line 7730
at src\remote\client\interface.cpp(7730)
[External Code]
fbclient.dll!Remote::analyze(cBlock={...}, attach_name={...}, flags=7, pb={...}, parSet={...}, node_name={...}, ref_db_name=0x0000000000000000, cryptCb=0x0000000000000000) Line 7680
at src\remote\client\interface.cpp(7680)
fbclient.dll!Remote::RProvider::attach(status=0x000000000014ebd0, filename=0x00000000001c1fb0, dpb_length=1372432, dpb=0x000000000014ede8, loopback=true) Line 1220
at src\remote\client\interface.cpp(1220)
[Inline Frame] fbclient.dll!Remote::Loopback::attachDatabase() Line 1285
at src\remote\client\interface.cpp(1285)
fbclient.dll!Firebird::IProviderBaseImpl<Remote::Loopback,Firebird::CheckStatusWrapper,Remote::RProvider>::cloopattachDatabaseDispatcher(self=0x00000000001c6518, status=0x00000000001c6518, fileName=0x00000000001c1fb0, dpbLength=11, dpb=0x000000000014ede8) Line 12231
at src\include\firebird\IdlFbInterfaces.h(12231)
[Inline Frame] fbclient.dll!Firebird::IProvider::attachDatabase() Line 2914
at src\include\firebird\IdlFbInterfaces.h(2914)
fbclient.dll!Why::Dispatcher::attachOrCreateDatabase(status=0x000000000014f1f0, createFlag, filename=0x00700000fffffffe, dpbLength=9, dpb=0x000000000014f2a8) Line 6463
at src\yvalve\why.cpp(6463)
fbclient.dll!Why::Dispatcher::attachDatabase(status, filename, dpbLength, dpb=0x000000000014f2a8) Line 6377
at src\yvalve\why.cpp(6377)
fbclient.dll!Firebird::IProviderBaseImpl<Why::Dispatcher,Firebird::CheckStatusWrapper,Firebird::IPluginBaseImpl<Why::Dispatcher,Firebird::CheckStatusWrapper,Firebird::Inherit<Firebird::IReferenceCountedImpl<Why::Dispatcher,Firebird::CheckStatusWrapper,Firebird::Inherit<Firebird::IVersionedImpl<Why::Dispatcher,Firebird::CheckStatusWrapper,Firebird::Inherit<Firebird::IProvider>>>>>>>::cloopattachDatabaseDispatcher(self=0x00000000001c1958, status=0x00000000001c1958, fileName=0x00000001400c5380, dpbLength=9, dpb=0x000000000014f2a8) Line 12231
at src\include\firebird\IdlFbInterfaces.h(12231)
[Inline Frame] isql.exe!Firebird::IProvider::attachDatabase() Line 2914
at src\include\firebird\IdlFbInterfaces.h(2914)
isql.exe!newdb(dbname=0x00000001400c5380, usr, psw, numbufs, sql_role_nm=0x00000001400c5630, start_user_trans=true) Line 8647
at gen\isql\isql.cpp(8647)
isql.exe!do_isql() Line 6132
at gen\isql\isql.cpp(6132)
isql.exe!ISQL_main(argc, argv=0x00000000004c29b0) Line 1936
at gen\isql\isql.cpp(1936)