mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
digest: no check for hidden objects
* ext/digest/digest.c (get_digest_base_metadata): metadata objects are hidden from ruby level. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47736 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
b5de461a49
commit
2f2f92b73e
4 changed files with 8 additions and 0 deletions
|
@ -518,6 +518,8 @@ get_digest_base_metadata(VALUE klass)
|
|||
if (NIL_P(p))
|
||||
rb_raise(rb_eRuntimeError, "Digest::Base cannot be directly inherited in Ruby");
|
||||
|
||||
#undef RUBY_UNTYPED_DATA_WARNING
|
||||
#define RUBY_UNTYPED_DATA_WARNING 0
|
||||
Data_Get_Struct(obj, rb_digest_metadata_t, algo);
|
||||
|
||||
switch (algo->api_version) {
|
||||
|
|
|
@ -38,6 +38,8 @@ Init_rmd160()
|
|||
|
||||
cDigest_RMD160 = rb_define_class_under(mDigest, "RMD160", cDigest_Base);
|
||||
|
||||
#undef RUBY_UNTYPED_DATA_WARNING
|
||||
#define RUBY_UNTYPED_DATA_WARNING 0
|
||||
rb_ivar_set(cDigest_RMD160, rb_intern("metadata"),
|
||||
Data_Wrap_Struct(rb_cObject, 0, 0, (void *)&rmd160));
|
||||
}
|
||||
|
|
|
@ -38,6 +38,8 @@ Init_sha1()
|
|||
|
||||
cDigest_SHA1 = rb_define_class_under(mDigest, "SHA1", cDigest_Base);
|
||||
|
||||
#undef RUBY_UNTYPED_DATA_WARNING
|
||||
#define RUBY_UNTYPED_DATA_WARNING 0
|
||||
rb_ivar_set(cDigest_SHA1, rb_intern("metadata"),
|
||||
Data_Wrap_Struct(rb_cObject, 0, 0, (void *)&sha1));
|
||||
}
|
||||
|
|
|
@ -52,5 +52,7 @@ Init_sha2()
|
|||
rb_ivar_set(cDigest_SHA##bitlen, id_metadata, \
|
||||
Data_Wrap_Struct(rb_cObject, 0, 0, (void *)&sha##bitlen));
|
||||
|
||||
#undef RUBY_UNTYPED_DATA_WARNING
|
||||
#define RUBY_UNTYPED_DATA_WARNING 0
|
||||
FOREACH_BITLEN(DEFINE_ALGO_CLASS)
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue