summaryrefslogtreecommitdiff
path: root/ext/openssl/ruby_missing.h
diff options
context:
space:
mode:
authortechnorama <technorama@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-04-02 19:00:23 +0000
committertechnorama <technorama@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-04-02 19:00:23 +0000
commit3930d3b36bfbe7b380595ed835dbd6b36847aab9 (patch)
treec43e95f78af3662db83b0641edb4e107bf607021 /ext/openssl/ruby_missing.h
parent790999028d75caa265cb66a8e44d200b8356ed8e (diff)
* ext/openssl/{ossl.[ch],ossl_pkey.c} Add documentation.
* ext/openssl/ossl_hmac.c Add reset method. * ext/openssl/ossl_cipher.c (Cipher#update) Take additional buffer argument. * ext/openssl/{ossl_bio.c,ossl_ssl.c,ruby_missing.h} compatibility with 1.8. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12133 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext/openssl/ruby_missing.h')
-rw-r--r--ext/openssl/ruby_missing.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/ext/openssl/ruby_missing.h b/ext/openssl/ruby_missing.h
index 4bd08890f8f..2eaa77e6913 100644
--- a/ext/openssl/ruby_missing.h
+++ b/ext/openssl/ruby_missing.h
@@ -14,5 +14,26 @@
#define rb_define_copy_func(klass, func) \
rb_define_method(klass, "initialize_copy", func, 1)
+
+#if RUBY_VERSION_CODE > 190
+#define FPTR_TO_FD(fptr) (fptr->fd)
+#else
+
+#define rb_io_t OpenFile
+#define FPTR_TO_FD(fptr) (fileno(fptr->f))
+
+
+/* these methods should probably be backported to 1.8 */
+#define rb_str_set_len(str, length) do { \
+ RSTRING(str)->ptr[length] = 0; \
+ RSTRING(str)->len = length; \
+} while(0)
+
+/* the openssl module doesn't use arg[3-4] and arg2 is always rb_each */
+#define rb_block_call(arg1, arg2, arg3, arg4, arg5, arg6) rb_iterate(rb_each, arg1, arg5, arg6)
+
+#endif /* RUBY_VERSION_CODE > 190 */
+
+
#endif /* _OSS_RUBY_MISSING_H_ */