Struct openssl::asn1::Asn1String
source · pub struct Asn1String(_);
Expand description
Primary ASN.1 type used by OpenSSL
Almost all ASN.1 types in OpenSSL are represented by ASN1_STRING structures. This implementation uses ASN1_STRING-to_UTF8 to preserve compatibility with Rust’s String.
Methods from Deref<Target = Asn1StringRef>§
sourcepub fn as_utf8(&self) -> Result<OpensslString, ErrorStack>
pub fn as_utf8(&self) -> Result<OpensslString, ErrorStack>
Converts the ASN.1 underlying format to UTF8
ASN.1 strings may utilize UTF-16, ASCII, BMP, or UTF8. This is important to consume the string in a meaningful way without knowing the underlying format.
This corresponds to ASN1_STRING_to_UTF8
.
sourcepub fn as_slice(&self) -> &[u8] ⓘ
pub fn as_slice(&self) -> &[u8] ⓘ
Return the string as an array of bytes.
The bytes do not directly correspond to UTF-8 encoding. To interact with
strings in rust, it is preferable to use as_utf8
This corresponds to ASN1_STRING_get0_data
.
sourcepub fn len(&self) -> usize
pub fn len(&self) -> usize
Returns the number of bytes in the string.
This corresponds to ASN1_STRING_length
.
Trait Implementations§
source§impl AsRef<Asn1StringRef> for Asn1String
impl AsRef<Asn1StringRef> for Asn1String
source§fn as_ref(&self) -> &Asn1StringRef
fn as_ref(&self) -> &Asn1StringRef
Converts this type into a shared reference of the (usually inferred) input type.
source§impl Borrow<Asn1StringRef> for Asn1String
impl Borrow<Asn1StringRef> for Asn1String
source§fn borrow(&self) -> &Asn1StringRef
fn borrow(&self) -> &Asn1StringRef
Immutably borrows from an owned value. Read more
source§impl Deref for Asn1String
impl Deref for Asn1String
§type Target = Asn1StringRef
type Target = Asn1StringRef
The resulting type after dereferencing.
source§fn deref(&self) -> &Asn1StringRef
fn deref(&self) -> &Asn1StringRef
Dereferences the value.
source§impl DerefMut for Asn1String
impl DerefMut for Asn1String
source§fn deref_mut(&mut self) -> &mut Asn1StringRef
fn deref_mut(&mut self) -> &mut Asn1StringRef
Mutably dereferences the value.
source§impl Drop for Asn1String
impl Drop for Asn1String
source§impl ForeignType for Asn1String
impl ForeignType for Asn1String
§type CType = ASN1_STRING
type CType = ASN1_STRING
The raw C type.
§type Ref = Asn1StringRef
type Ref = Asn1StringRef
The type representing a reference to this type.
source§unsafe fn from_ptr(ptr: *mut ASN1_STRING) -> Asn1String
unsafe fn from_ptr(ptr: *mut ASN1_STRING) -> Asn1String
Constructs an instance of this type from its raw type.
source§fn as_ptr(&self) -> *mut ASN1_STRING
fn as_ptr(&self) -> *mut ASN1_STRING
Returns a raw pointer to the wrapped value.