| |
    最近程序發現了個奇葩現象,即從文件載入的證書鏈用openssl校驗是通過的,而用curl遠程獲取的就校驗失敗,錯誤碼7。而這些內容寫入文件在下一次程序啟動時載入校驗,又是成功的。

    排查了各種內存泄露、不可見字符的可能性后。突然想起來是不是libcurl靜態鏈接了openssl跟主程序動態鏈接的打架。查看后發現libcurl未靜態鏈接openssl。

     不過這也是一個啟示。想起來既然curl也用到了openssl,那么它在最后cleanup的時候會不會把全局的openssl數據結構給釋放掉。


     嘗試了一下,果然好了。原來我在一個函數里開頭調用curl_global_init,結尾調用curl_global_cleanup。這樣的話在程序結束時就會釋放openssl的全局數據結構。導致后續調用證書校驗報錯。

     不過openssl也不夠友好,報證書簽名錯誤,讓人很難聯想到是初始化問題。


      不過aes加密部分并不受這個影響。
by snooda | 分類: c程序設計 | 評論(1) | 引用(0) | 閱讀(5316)
ELI
2018/04/19 10:56
zan
分頁: 1/1 第一頁 1 最后頁
發表評論
表情
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
打開HTML
打開UBB
打開表情
隱藏
記住我
昵稱   密碼   游客無需密碼
網址   電郵   [注冊]
               

 
黄se大片全集,s8视频 情色视频,国产在线久久播放,天天鲁天一鲁,第一色色资源站 一色屋,3X免费视频 <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <文本链> <文本链> <文本链> <文本链> <文本链> <文本链>