From a05e89ca65c24dd4821e34172c891e5b8de33a54 Mon Sep 17 00:00:00 2001 From: technorama Date: Mon, 2 Apr 2007 22:10:12 +0000 Subject: * ext/openssl/ossl_{ssl.[ch],ssl_session.c}}, ext/openssl/lib/openssl/lib/openssl/ssl.rb: New SSL::Session class. Add session cb's, getter/setters, config, and statistics methods. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12134 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ext/openssl/ossl_ssl.h | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'ext/openssl/ossl_ssl.h') diff --git a/ext/openssl/ossl_ssl.h b/ext/openssl/ossl_ssl.h index 5929eef856..487f41216c 100644 --- a/ext/openssl/ossl_ssl.h +++ b/ext/openssl/ossl_ssl.h @@ -11,11 +11,26 @@ #if !defined(_OSSL_SSL_H_) #define _OSSL_SSL_H_ +#define GetSSLSession(obj, sess) do { \ + Data_Get_Struct(obj, SSL_SESSION, sess); \ + if (!sess) { \ + ossl_raise(rb_eRuntimeError, "SSL Session wasn't initialized."); \ + } \ +} while (0) + +#define SafeGetSSLSession(obj, sess) do { \ + OSSL_Check_Kind(obj, cSSLSession); \ + GetSSLSession(obj, sess); \ +} while (0) + extern VALUE mSSL; extern VALUE eSSLError; extern VALUE cSSLSocket; extern VALUE cSSLContext; +extern VALUE cSSLSession; void Init_ossl_ssl(void); +void Init_ossl_ssl_session(void); #endif /* _OSSL_SSL_H_ */ + -- cgit v1.2.3