Method: OpenSSL::X509::Attribute#to_der

Defined in:
ossl_x509attr.c

#to_derString



280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
# File 'ossl_x509attr.c', line 280

static VALUE
ossl_x509attr_to_der(VALUE self)
{
    X509_ATTRIBUTE *attr;
    VALUE str;
    int len;
    unsigned char *p;

    GetX509Attr(self, attr);
    if((len = i2d_X509_ATTRIBUTE(attr, NULL)) <= 0)
  ossl_raise(eX509AttrError, NULL);
    str = rb_str_new(0, len);
    p = (unsigned char *)RSTRING_PTR(str);
    if(i2d_X509_ATTRIBUTE(attr, &p) <= 0)
  ossl_raise(eX509AttrError, NULL);
    ossl_str_adjust(str, p);

    return str;
}