On 12/15/2015 05:11 PM, Dimitry Sibiryakov wrote: > 15.12.2015 14:54, Alex Peshkoff wrote: >>> During your finishing, consider following case: >>>> 1) Server has two encrypted database >>>> 2) First DB is encrypted using CryptPlugin1 + KeyHolder1 >>>> 3) Second DB is encrypted using CryptPlugin2 + KeyHolder2 >>>> 4) firebid.conf contains string KeyHolderPlugins = KeyHolder1,KeyHolder2 >>>> >>>> Result: second database in completely inaccessible. >> That depends upon interaction between crypt and keyholder plugins. > Nope. CryptKeyHoldr::keyCallback() is called without information about > crypt plugin. >
It does not matter because CryptKeyCallback::callback(uint dataLength, const void* data, uint bufferLength, void* buffer) does contain "data" (passed from crypt plugin to key holder) parameter. BTW, setting KeyHolder in firebird.conf anyway far from ideal - much better to set it in databases.conf on per-database basis. Specially when different plugins are needed for different databases. ------------------------------------------------------------------------------ Firebird-Devel mailing list, web interface at https://lists.sourceforge.net/lists/listinfo/firebird-devel