12 #define NewX509Rev(klass) \ 13 TypedData_Wrap_Struct((klass), &ossl_x509rev_type, 0) 14 #define SetX509Rev(obj, rev) do { \ 16 ossl_raise(rb_eRuntimeError, "REV wasn't initialized!"); \ 18 RTYPEDDATA_DATA(obj) = (rev); \ 20 #define GetX509Rev(obj, rev) do { \ 21 TypedData_Get_Struct((obj), X509_REVOKED, &ossl_x509rev_type, (rev)); \ 23 ossl_raise(rb_eRuntimeError, "REV wasn't initialized!"); \ 34 ossl_x509rev_free(
void *ptr)
36 X509_REVOKED_free(ptr);
58 new = X509_REVOKED_new();
73 X509_REVOKED *rev, *
new;
87 ossl_x509revoked_alloc(
VALUE klass)
93 if (!(rev = X509_REVOKED_new())) {
109 ossl_x509revoked_initialize_copy(
VALUE self,
VALUE other)
111 X509_REVOKED *rev, *rev_other, *rev_new;
122 X509_REVOKED_free(rev);
128 ossl_x509revoked_get_serial(
VALUE self)
138 ossl_x509revoked_set_serial(
VALUE self,
VALUE num)
141 ASN1_INTEGER *asn1int;
145 if (!X509_REVOKED_set_serialNumber(rev, asn1int)) {
146 ASN1_INTEGER_free(asn1int);
149 ASN1_INTEGER_free(asn1int);
155 ossl_x509revoked_get_time(
VALUE self)
158 const ASN1_TIME *time;
169 ossl_x509revoked_set_time(
VALUE self,
VALUE time)
176 if (!X509_REVOKED_set_revocationDate(rev, asn1time)) {
177 ASN1_TIME_free(asn1time);
180 ASN1_TIME_free(asn1time);
188 ossl_x509revoked_get_extensions(
VALUE self)
196 count = X509_REVOKED_get_ext_count(rev);
202 for (i=0; i<
count; i++) {
203 ext = X509_REVOKED_get_ext(rev, i);
214 ossl_x509revoked_set_extensions(
VALUE self,
VALUE ary)
226 while ((ext = X509_REVOKED_delete_ext(rev, 0)))
227 X509_EXTENSION_free(ext);
231 if(!X509_REVOKED_add_ext(rev, ext, -1)) {
240 ossl_x509revoked_add_extension(
VALUE self,
VALUE ext)
#define SetX509Rev(obj, rev)
#define RUBY_TYPED_FREE_IMMEDIATELY
VALUE rb_ary_push(VALUE ary, VALUE item)
ASN1_TIME * ossl_x509_time_adjust(ASN1_TIME *s, VALUE time)
VALUE rb_define_class_under(VALUE outer, const char *name, VALUE super)
Defines a class under the namespace of outer.
VALUE ossl_x509revoked_new(X509_REVOKED *rev)
void rb_define_alloc_func(VALUE, rb_alloc_func_t)
X509_REVOKED * DupX509RevokedPtr(VALUE obj)
VALUE asn1integer_to_num(const ASN1_INTEGER *ai)
#define GetX509Rev(obj, rev)
#define X509_REVOKED_get0_serialNumber(x)
RUBY_EXTERN VALUE rb_cObject
VALUE ossl_x509ext_new(X509_EXTENSION *)
#define X509_REVOKED_get0_revocationDate(x)
#define NewX509Rev(klass)
#define X509_REVOKED_dup(rev)
VALUE rb_define_module_under(VALUE outer, const char *name)
X509_EXTENSION * GetX509ExtPtr(VALUE)
#define RARRAY_AREF(a, i)
VALUE asn1time_to_time(const ASN1_TIME *time)
#define OSSL_Check_Kind(obj, klass)
void ossl_raise(VALUE exc, const char *fmt,...)
void Init_ossl_x509revoked(void)
#define rb_check_frozen(obj)
VALUE rb_define_module(const char *name)
void rb_define_method(VALUE klass, const char *name, VALUE(*func)(ANYARGS), int argc)
ASN1_INTEGER * num_to_asn1integer(VALUE obj, ASN1_INTEGER *ai)