📄 x509_name_print_ex.pod
字号:
=pod=head1 NAMEX509_NAME_print_ex, X509_NAME_print_ex_fp, X509_NAME_print,X509_NAME_oneline - X509_NAME printing routines.=head1 SYNOPSIS #include <openssl/x509.h> int X509_NAME_print_ex(BIO *out, X509_NAME *nm, int indent, unsigned long flags); int X509_NAME_print_ex_fp(FILE *fp, X509_NAME *nm, int indent, unsigned long flags); char * X509_NAME_oneline(X509_NAME *a,char *buf,int size); int X509_NAME_print(BIO *bp, X509_NAME *name, int obase);=head1 DESCRIPTIONX509_NAME_print_ex() prints a human readable version of B<nm> to BIO B<out>. Eachline (for multiline formats) is indented by B<indent> spaces. The output formatcan be extensively customised by use of the B<flags> parameter.X509_NAME_print_ex_fp() is identical to X509_NAME_print_ex() except the output iswritten to FILE pointer B<fp>.X509_NAME_oneline() prints an ASCII version of B<a> to B<buf>. At most B<size>bytes will be written. If B<buf> is B<NULL> then a buffer is dynamically allocatedand returned, otherwise B<buf> is returned.X509_NAME_print() prints out B<name> to B<bp> indenting each line by B<obase> characters. Multiple lines are used if the output (including indent) exceeds80 characters.=head1 NOTESThe functions X509_NAME_oneline() and X509_NAME_print() are legacy functions whichproduce a non standard output form, they don't handle multi character fields andhave various quirks and inconsistencies. Their use is strongly discouraged in newapplications.Although there are a large number of possible flags for most purposesB<XN_FLAG_ONELINE>, B<XN_FLAG_MULTILINE> or B<XN_FLAG_RFC2253> will suffice.As noted on the L<ASN1_STRING_print_ex(3)|ASN1_STRING_print_ex(3)> manual pagefor UTF8 terminals the B<ASN1_STRFLGS_ESC_MSB> should be unset: so for exampleB<XN_FLAG_ONELINE & ~ASN1_STRFLGS_ESC_MSB> would be used.The complete set of the flags supported by X509_NAME_print_ex() is listed below.Several options can be ored together.The options B<XN_FLAG_SEP_COMMA_PLUS>, B<XN_FLAG_SEP_CPLUS_SPC>,B<XN_FLAG_SEP_SPLUS_SPC> and B<XN_FLAG_SEP_MULTILINE> determine the field separatorsto use. Two distinct separators are used between distinct RelativeDistinguishedNamecomponents and separate values in the same RDN for a multi-valued RDN. Multi-valuedRDNs are currently very rare so the second separator will hardly ever be used.B<XN_FLAG_SEP_COMMA_PLUS> uses comma and plus as separators. B<XN_FLAG_SEP_CPLUS_SPC>uses comma and plus with spaces: this is more readable that plain comma and plus.B<XN_FLAG_SEP_SPLUS_SPC> uses spaced semicolon and plus. B<XN_FLAG_SEP_MULTILINE> usesspaced newline and plus respectively.If B<XN_FLAG_DN_REV> is set the whole DN is printed in reversed order.The fields B<XN_FLAG_FN_SN>, B<XN_FLAG_FN_LN>, B<XN_FLAG_FN_OID>,B<XN_FLAG_FN_NONE> determine how a field name is displayed. It willuse the short name (e.g. CN) the long name (e.g. commonName) alwaysuse OID numerical form (normally OIDs are only used if the field name is notrecognised) and no field name respectively.If B<XN_FLAG_SPC_EQ> is set then spaces will be placed around the '=' characterseparating field names and values.If B<XN_FLAG_DUMP_UNKNOWN_FIELDS> is set then the encoding of unknown fields isprinted instead of the values.If B<XN_FLAG_FN_ALIGN> is set then field names are padded to 20 characters: thisis only of use for multiline format.Additionally all the options supported by ASN1_STRING_print_ex() can be used to control how each field value is displayed.In addition a number options can be set for commonly used formats.B<XN_FLAG_RFC2253> sets options which produce an output compatible with RFC2253 itis equivalent to: B<ASN1_STRFLGS_RFC2253 | XN_FLAG_SEP_COMMA_PLUS | XN_FLAG_DN_REV | XN_FLAG_FN_SN | XN_FLAG_DUMP_UNKNOWN_FIELDS>B<XN_FLAG_ONELINE> is a more readable one line format which is the same as: B<ASN1_STRFLGS_RFC2253 | ASN1_STRFLGS_ESC_QUOTE | XN_FLAG_SEP_CPLUS_SPC | XN_FLAG_SPC_EQ | XN_FLAG_FN_SN>B<XN_FLAG_MULTILINE> is a multiline format which is the same as: B<ASN1_STRFLGS_ESC_CTRL | ASN1_STRFLGS_ESC_MSB | XN_FLAG_SEP_MULTILINE | XN_FLAG_SPC_EQ | XN_FLAG_FN_LN | XN_FLAG_FN_ALIGN>B<XN_FLAG_COMPAT> uses a format identical to X509_NAME_print(): in fact it calls X509_NAME_print() internally.=head1 SEE ALSOL<ASN1_STRING_print_ex(3)|ASN1_STRING_print_ex(3)>=head1 HISTORYTBA=cut
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -