关于SSL会话恢复:两片材料不一致

问题描述:

材料A: http://h71000.www7.hp.com/doc/83final/ba554_90007/ch04s03.html关于SSL会话恢复:两片材料不一致

材料B: http://www.linuxjournal.com/article/5487?page=0,1

下面是从材料A的快照告诉我会话恢复会失败,如果我叫SSL_free,即使通过SSL_get1_session()保存会话。

snapshot from Material A

但在材料B一段代码告诉我SSL_free将导致没有为会话恢复。由于SSL_get1_session将增加会话对象中的引用计数器,并允许在释放会话后重新使用SSL对象。

下面是从材料B快照: snapshot from Material B

所以,那些困惑了我这么多,哪一个是真正正确的?

Thx!

我认为源A是错误的,我认为SSL_get1_session与SSL_get_session错误,实际上是SSL_get0_session(不增加计数器)。 OpenSSL documentation在这个问题上很清楚。

man page完全支持第二种说法。