Method: OpenSSL::X509::Attribute#initialize_copy

Defined in:
ossl_x509attr.c

#initialize_copy(other) ⇒ Object


126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
# File 'ossl_x509attr.c', line 126

static VALUE
ossl_x509attr_initialize_copy(VALUE self, VALUE other)
{
    X509_ATTRIBUTE *attr, *attr_other, *attr_new;

    rb_check_frozen(self);
    GetX509Attr(self, attr);
    GetX509Attr(other, attr_other);

    attr_new = X509_ATTRIBUTE_dup(attr_other);
    if (!attr_new)
	ossl_raise(eX509AttrError, "X509_ATTRIBUTE_dup");

    SetX509Attr(self, attr_new);
    X509_ATTRIBUTE_free(attr);

    return self;
}