[[[ 2ch ブラウザ JD 16 ]]]©5ch.net
■ このスレッドは過去ログ倉庫に格納されています
0362login:Penguin
2015/04/21(火) 00:36:21.07ID:fkR5uYWM・GNUTLS2.0用 1898行目の GNUTLS_E_PREMATURE_TERMINATION を GNUTLS_E_UNEXPECTED_PACKET_LENGTH へ変更
・GNUTLS2.0、3.0両対応 1887行目から1905行目を以下に変更
---------- ここから ----------
@@ -133,8 +138,21 @@
const int JDSSL::read( char* buf, const size_t bufsize )
{
+ if ( m_terminated ) return 0;
+
int tmpsize = gnutls_record_recv( m_session, buf, bufsize );
- if( tmpsize < 0 ) m_errmsg = "gnutls_record_recv failed";
+#ifdef _DEBUG
+ std::cout << "JDSSL::read(gnutls) " << tmpsize << std::endl;
+#endif
+#if GNUTLS_VERSION_NUMBER >= 0x029900
+ if( tmpsize == GNUTLS_E_PREMATURE_TERMINATION ){
+#else
+ if( tmpsize == GNUTLS_E_UNEXPECTED_PACKET_LENGTH ){
+#endif
+ tmpsize = 0;
+ m_terminated = true;
+ }
+ else if( tmpsize < 0 ) m_errmsg = "gnutls_record_recv failed";
return tmpsize;
}
---------- ここまで ----------
jd-2.8.9-150226.tgzを解凍し、フォルダjd-2.8.9-150226へ変更したパッチjd-2.8.9-150226-a150417.patchをコピー
$ cd /解凍した場所/jd-2.8.9-150226/
$ cat jd-2.8.9-150226-a150417.patch | patch -p1
以下、3.0と一緒
■ このスレッドは過去ログ倉庫に格納されています