def get_components(self):
result = []<EOL>for i in range(_lib.X509_NAME_entry_count(self._name)):<EOL><INDENT>ent = _lib.X509_NAME_get_entry(self._name, i)<EOL>fname = _lib.X509_NAME_ENTRY_get_object(ent)<EOL>fval = _lib.X509_NAME_ENTRY_get_data(ent)<EOL>nid = _lib.OBJ_obj2nid(fname)<EOL>name = _lib.OBJ_nid2sn(nid)<EOL>value = _ffi.buffer(_lib.ASN1_STRING_data(fval),<EOL>_lib.ASN1_STRING_length(fval))[:]<EOL>result.append((_ffi.string(name), value))<EOL><DEDENT>return result<EOL>
Returns the components of this name, as a sequence of 2-tuples.

:return: The components of this name.
:rtype: :py:class:`list` of ``name, value`` tuples.