Class: OpenSSL::ASN1::ObjectId
- Defined in:
- ext/openssl/ossl_asn1.c,
ext/openssl/ossl_asn1.c
Overview
Represents the primitive object id for OpenSSL::ASN1
Class Method Summary collapse
-
.OpenSSL::ASN1::ObjectId.register(object_id, short_name, long_name) ⇒ Object
This adds a new ObjectId to the internal tables.
Instance Method Summary collapse
-
#==(other_oid) ⇒ Boolean
Returns
trueif other_oid is the same as oid. -
#ln ⇒ Object
(also: #long_name)
The long name of the ObjectId, as defined in <openssl/objects.h>.
-
#oid ⇒ String
Returns a String representing the Object Identifier in the dot notation, e.g.
-
#sn ⇒ Object
(also: #short_name)
The short name of the ObjectId, as defined in <openssl/objects.h>.
Methods inherited from Primitive
Methods inherited from ASN1Data
Constructor Details
This class inherits a constructor from OpenSSL::ASN1::Primitive
Class Method Details
.OpenSSL::ASN1::ObjectId.register(object_id, short_name, long_name) ⇒ Object
This adds a new ObjectId to the internal tables. Where object_id is the numerical form, short_name is the short name, and long_name is the long name.
Returns true if successful. Raises an OpenSSL::ASN1::ASN1Error if it fails.
1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 |
# File 'ext/openssl/ossl_asn1.c', line 1273 static VALUE ossl_asn1obj_s_register(VALUE self, VALUE oid, VALUE sn, VALUE ln) { StringValueCStr(oid); StringValueCStr(sn); StringValueCStr(ln); if(!OBJ_create(RSTRING_PTR(oid), RSTRING_PTR(sn), RSTRING_PTR(ln))) ossl_raise(eASN1Error, NULL); return Qtrue; } |
Instance Method Details
#==(other_oid) ⇒ Boolean
Returns true if other_oid is the same as oid.
1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 |
# File 'ext/openssl/ossl_asn1.c', line 1360 static VALUE ossl_asn1obj_eq(VALUE self, VALUE other) { VALUE oid1, oid2; if (!rb_obj_is_kind_of(other, cASN1ObjectId)) return Qfalse; oid1 = ossl_asn1obj_get_oid(self); oid2 = ossl_asn1obj_get_oid(other); return rb_str_equal(oid1, oid2); } |
#ln ⇒ String #long_name ⇒ String Also known as: long_name
The long name of the ObjectId, as defined in <openssl/objects.h>.
1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 |
# File 'ext/openssl/ossl_asn1.c', line 1313 static VALUE ossl_asn1obj_get_ln(VALUE self) { VALUE val, ret = Qnil; int nid; val = ossl_asn1_get_value(self); if ((nid = OBJ_txt2nid(StringValueCStr(val))) != NID_undef) ret = rb_str_new2(OBJ_nid2ln(nid)); return ret; } |
#oid ⇒ String
Returns a String representing the Object Identifier in the dot notation, e.g. "1.2.3.4.5"
1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 |
# File 'ext/openssl/ossl_asn1.c', line 1339 static VALUE ossl_asn1obj_get_oid(VALUE self) { VALUE str; ASN1_OBJECT *a1obj; int state; a1obj = ossl_to_asn1obj(ossl_asn1_get_value(self)); str = rb_protect(asn1obj_get_oid_i, (VALUE)a1obj, &state); ASN1_OBJECT_free(a1obj); if (state) rb_jump_tag(state); return str; } |
#sn ⇒ String #short_name ⇒ String Also known as: short_name
The short name of the ObjectId, as defined in <openssl/objects.h>.
1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 |
# File 'ext/openssl/ossl_asn1.c', line 1293 static VALUE ossl_asn1obj_get_sn(VALUE self) { VALUE val, ret = Qnil; int nid; val = ossl_asn1_get_value(self); if ((nid = OBJ_txt2nid(StringValueCStr(val))) != NID_undef) ret = rb_str_new2(OBJ_nid2sn(nid)); return ret; } |