2012-06-29 68 views
0

我想在我的Android應用程序的JNI代碼中加載證書。有沒有人試過類似的東西?我知道Open-SSL具有需要證書文件的功能。我發現你可以用這種方式將證書存儲在內存中。我需要這個功能,因爲我想硬編碼證書。現在這段代碼片段應該可以完成那項工作,但事實並非如此。在Android中的本機代碼中使用證書

BIO* mem_bio = BIO_new_mem_buf(certificate, strlen(certificate)); 
X509* cert = PEM_read_bio_X509_AUX(mem_bio,NULL,NULL,NULL); 
X509_STORE_add_cert(ctx->cert_store,cert); 
BIO_free(mem_bio); 
X509_free(cert); 
(ctx is a handle to my SSL_CTX) 

我對C編程相當陌生,我錯過了什麼嗎?

謝謝。

回答

0

這是一個愚蠢的錯誤。我正在嘗試構建的共享庫與我正在使用的libssl.a和libcrypto.a靜態庫鏈接不正確。

我在看到輸出形式「nm」命令 nm 後發現了這一點,它顯示了這兩個靜態庫提供的所有功能都是Undefined。