diff options
author | tb <> | 2025-01-26 20:01:58 +0000 |
---|---|---|
committer | tb <> | 2025-01-26 20:01:58 +0000 |
commit | d2f7e48d3d75285ab819059405075d1806694766 (patch) | |
tree | 18f777cbd9c3d005bfa438b19e39b94880900d94 /src/lib/libcrypto/dsa | |
parent | 87e1f3ee1c9685a05be80a789e2b60ffe7acd7b7 (diff) | |
download | openbsd-d2f7e48d3d75285ab819059405075d1806694766.tar.gz openbsd-d2f7e48d3d75285ab819059405075d1806694766.tar.bz2 openbsd-d2f7e48d3d75285ab819059405075d1806694766.zip |
Rewrite X509_NAME_ENTRY_oneline() using CBB and CBS
This splits the horrid spaghetti into a few relatively straightforward
helpers which do one thing at a time. There are still some spectacular
dances around ASN1_GENERALSTRING, but let's blame that one on X.500.
In brief, X509_NAME_ENTRY_oneline() iterates over the name entries, and
writes out a line /name1=value1,/name2=value2,... which you may have seen
variations of in issuer or subject output.
The name is the short name or the long name or the textual representation
of the OID (truncated to 79 characters) and the value is a string where
printable ASCII characters are represented as themselves and otherwise as
hexadecimal digits preceded by \x. Except for GENERALSTRING, where the four
octet representation is shortened to single-octet representation if none of
the top three octets in the entire string is populated.
It's the mother of all pretty things. But, hey, you could do worse and try
to parse this garbage...
ok jsing
Diffstat (limited to 'src/lib/libcrypto/dsa')
0 files changed, 0 insertions, 0 deletions