2012-06-29 67 views
0

我想在我的android設備中使用fips-openssl庫。到目前爲止,我已經能夠構建fips模塊並運行我的設備上隨附的測試套件。現在,我試圖將特定的證書加載到我的代碼的JNI部分。但是應用程序失敗並出現此錯誤。NDK:使用共享庫時出錯

這是失敗的地方。

cbio = BIO_new_mem_buf((void*)thawteCA, -1); 
    PEM_read_bio_X509(cbio, &cacert, 0, NULL); 

我建立我自己的共享庫「libfips.so」與FIPS objectfile(fipscanister.o),我加載它在我的Java類。

Fatal signal 11 (SIGSEGV) at 0xdeadbaad (code=1) 

我重視我的Android日誌的相關部分。我對NDK開發相當陌生。任何有關這方面的指針都會對我有很大的幫助。

F/libc (5488): Fatal signal 11 (SIGSEGV) at 0xdeadbaad (code=1) 
I/DEBUG ( 91): debuggerd: tmb file path:'/data/tombstones/tombstone_09' 
I/DEBUG ( 91): *** *** *** *** *** *** *** *** *** *** *** 
I/DEBUG ( 91): Build fingerprint: 'alps/e1808_v75_jbl1/e1808_v75_jbl1:4.0.3/IML74K/1338672019:user/test-keys' 
I/DEBUG ( 91): pid: 5488, tid: 5488 >>> com.work.data <<< 
I/DEBUG ( 91): signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr deadbaad 
I/DEBUG ( 91): r0 deadbaad r1 00000001 r2 40000000 r3 00000000 
I/DEBUG ( 91): r4 00000000 r5 00000027 r6 00000004 r7 40049da4 
I/DEBUG ( 91): r8 be997678 r9 40049d9c 10 00000000 fp be99764c 
I/DEBUG ( 91): ip ffffffff sp be9975f8 lr 40103589 pc 400ffc8c cpsr 60000030 
I/DEBUG ( 91):   #00 pc 00017c8c /system/lib/libc.so 
D/AEE/debuggerd( 91): stack_depth:1 
I/DEBUG ( 91):   #01 lr 40103589 /system/lib/libc.so 
I/DEBUG ( 91): 
I/DEBUG ( 91): code around pc: 
I/DEBUG ( 91): 400ffc6c 4623b15c 2c006824 e026d1fb b12368db \.#F$h.,..&..h#. 
I/DEBUG ( 91): 400ffc7c 21014a17 6011447a 48124798 24002527 .J.!zD.`.G.H'%.$ 
I/DEBUG ( 91): 400ffc8c f7f47005 2106eca2 ed30f7f5 f04fa901 .p.....!..0...O. 
I/DEBUG ( 91): 400ffc9c 460a5380 93032006 94029401 e8faf7f5 .S.F. .......... 
I/DEBUG ( 91): 400ffcac 4622a905 f7f52002 f7f4e904 2106ec8e .."F. .........! 
I/DEBUG ( 91): 
I/DEBUG ( 91): code around lr: 
I/DEBUG ( 91): 40103568 41f0e92d 4c0c4680 447c2600 68a56824 -..A.F.L.&|D$h.h 
I/DEBUG ( 91): 40103578 e0076867 300cf9b5 dd022b00 47c04628 gh.....0.+..(F.G 
I/DEBUG ( 91): 40103588 35544306 37fff117 6824d5f4 d1ee2c00 .CT5...7..$h.,.. 
I/DEBUG ( 91): 40103598 e8bd4630 bf0081f0 00027f9a 41f0e92d 0F..........-..A 
I/DEBUG ( 91): 401035a8 9004b086 f602fb01 460c461f 46154814 .........F.F.H.F 
I/DEBUG ( 91): 
I/DEBUG ( 91): memory map around addr deadbaad: 
I/DEBUG ( 91): be977000-be998000 [stack] 
I/DEBUG ( 91): (no map for address) 
I/DEBUG ( 91): ffff0000-ffff1000 [vectors] 
I/DEBUG ( 91): 
I/DEBUG ( 91): stack: 
I/DEBUG ( 91):  be9975b8 51226ecc /data/data/com.work.data/lib/libfips.so 
I/DEBUG ( 91):  be9975bc 0151c478 [heap] 
I/DEBUG ( 91):  be9975c0 40049da4 
I/DEBUG ( 91):  be9975c4 511b7570 /data/data/com.work.data/lib/libfips.so 
I/DEBUG ( 91):  be9975c8 4012b74c /system/lib/libc.so 
I/DEBUG ( 91):  be9975cc 40130850 
I/DEBUG ( 91):  be9975d0 00000000 
I/DEBUG ( 91):  be9975d4 40103589 /system/lib/libc.so 
I/DEBUG ( 91):  be9975d8 00000000 
I/DEBUG ( 91):  be9975dc be99760c [stack] 
I/DEBUG ( 91):  be9975e0 00000004 
I/DEBUG ( 91):  be9975e4 40049da4 
I/DEBUG ( 91):  be9975e8 be997678 [stack] 
I/DEBUG ( 91):  be9975ec 401026c9 /system/lib/libc.so 
I/DEBUG ( 91):  be9975f0 df0027ad 
I/DEBUG ( 91):  be9975f4 00000000 
I/DEBUG ( 91): #00 be9975f8 51246aec /data/data/com.work.data/lib/libfips.so 
I/DEBUG ( 91):  be9975fc 0150c8c8 [heap] 
I/DEBUG ( 91):  be997600 51219f68 /data/data/com.work.data/lib/libfips.so 
I/DEBUG ( 91):  be997604 00000498 
I/DEBUG ( 91):  be997608 00000004 
I/DEBUG ( 91):  be99760c fffffbdf 
I/DEBUG ( 91):  be997610 012c5680 [heap] 
I/DEBUG ( 91):  be997614 4c1797c0 /dev/ashmem/dalvik-LinearAlloc (deleted) 
I/DEBUG ( 91):  be997618 012c5680 [heap] 
I/DEBUG ( 91):  be99761c 511ca4ec /data/data/com.work.data/lib/libfips.so 
I/DEBUG ( 91):  be997620 4c1797c0 /dev/ashmem/dalvik-LinearAlloc (deleted) 
I/DEBUG ( 91):  be997624 51195e00 /data/data/com.work.data/lib/libfips.so 
I/DEBUG ( 91):  be997628 51238970 /data/data/com.work.data/lib/libfips.so 
I/DEBUG ( 91):  be99762c 0150c848 [heap] 
I/DEBUG ( 91):  be997630 293d175e 
I/DEBUG ( 91):  be997634 4c1797c0 /dev/ashmem/dalvik-LinearAlloc (deleted) 
I/DEBUG ( 91):  be997638 51219888 /data/data/com.work.data/lib/libfips.so 
I/DEBUG ( 91):  be99763c 51219f68 /data/data/com.work.data/lib/libfips.so 

回答