void sqlite3CodecGetKey(sqlite3* db, int nDb, void **zKey, int *nKey) { struct Db *pDb = &db->aDb[nDb]; CODEC_TRACE(("sqlite3CodecGetKey: entered db=%d, nDb=%d\n", db, nDb)); if( pDb->pBt ) { codec_ctx *ctx; sqlite3pager_get_codec(pDb->pBt->pBt->pPager, (void **) &ctx); if(ctx) { /* if the codec has an attached codec_context user the raw key data */ sqlcipher_codec_get_pass(ctx, zKey, nKey); } else { *zKey = NULL; *nKey = 0; } } }
void sqlite3CodecGetKey(sqlite3* db, int nDb, void **zKey, int *nKey) { struct Db *pDb = &db->aDb[nDb]; CODEC_TRACE(("sqlite3CodecGetKey: entered db=%p, nDb=%d\n", db, nDb)); if( pDb->pBt ) { codec_ctx *ctx; sqlite3pager_get_codec(pDb->pBt->pBt->pPager, (void **) &ctx); if(ctx) { if(sqlcipher_codec_get_store_pass(ctx) == 1) { sqlcipher_codec_get_pass(ctx, zKey, nKey); } else { sqlcipher_codec_get_keyspec(ctx, zKey, nKey); } } else { *zKey = NULL; *nKey = 0; } } }