123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107 |
- =pod
- =head1 NAME
- ossl_cmp_statusinfo_new,
- ossl_cmp_pkisi_pkistatus_get,
- ossl_cmp_pkisi_pkifailureinfo_get,
- ossl_cmp_pkisi_pkifailureinfo_check,
- ossl_cmp_pkisi_failinfo_get0,
- ossl_cmp_pkisi_statusstring_get0,
- ossl_pkisi_snprint
- - functions for managing PKI status information
- =head1 SYNOPSIS
- #include "cmp.h"
- # define OSSL_CMP_PKIFAILUREINFO_badAlg 0
- # define OSSL_CMP_PKIFAILUREINFO_badMessageCheck 1
- # define OSSL_CMP_PKIFAILUREINFO_badRequest 2
- # define OSSL_CMP_PKIFAILUREINFO_badTime 3
- # define OSSL_CMP_PKIFAILUREINFO_badCertId 4
- # define OSSL_CMP_PKIFAILUREINFO_badDataFormat 5
- # define OSSL_CMP_PKIFAILUREINFO_wrongAuthority 6
- # define OSSL_CMP_PKIFAILUREINFO_incorrectData 7
- # define OSSL_CMP_PKIFAILUREINFO_missingTimeStamp 8
- # define OSSL_CMP_PKIFAILUREINFO_badPOP 9
- # define OSSL_CMP_PKIFAILUREINFO_certRevoked 10
- # define OSSL_CMP_PKIFAILUREINFO_certConfirmed 11
- # define OSSL_CMP_PKIFAILUREINFO_wrongIntegrity 12
- # define OSSL_CMP_PKIFAILUREINFO_badRecipientNonce 13
- # define OSSL_CMP_PKIFAILUREINFO_timeNotAvailable 14
- # define OSSL_CMP_PKIFAILUREINFO_unacceptedPolicy 15
- # define OSSL_CMP_PKIFAILUREINFO_unacceptedExtension 16
- # define OSSL_CMP_PKIFAILUREINFO_addInfoNotAvailable 17
- # define OSSL_CMP_PKIFAILUREINFO_badSenderNonce 18
- # define OSSL_CMP_PKIFAILUREINFO_badCertTemplate 19
- # define OSSL_CMP_PKIFAILUREINFO_signerNotTrusted 20
- # define OSSL_CMP_PKIFAILUREINFO_transactionIdInUse 21
- # define OSSL_CMP_PKIFAILUREINFO_unsupportedVersion 22
- # define OSSL_CMP_PKIFAILUREINFO_notAuthorized 23
- # define OSSL_CMP_PKIFAILUREINFO_systemUnavail 24
- # define OSSL_CMP_PKIFAILUREINFO_systemFailure 25
- # define OSSL_CMP_PKIFAILUREINFO_duplicateCertReq 26
- # define OSSL_CMP_PKIFAILUREINFO_MAX 26
- OSSL_CMP_PKISI *ossl_cmp_statusinfo_new(int status, int fail_info,
- const char *text);
- int ossl_cmp_pkisi_pkistatus_get(OSSL_CMP_PKISI *si);
- int ossl_cmp_pkisi_pkifailureinfo_get(OSSL_CMP_PKISI *si);
- int ossl_cmp_pkisi_pkifailureinfo_check(OSSL_CMP_PKISI *si, int bit_index);
- OSSL_CMP_PKIFAILUREINFO *ossl_cmp_pkisi_failinfo_get0(const OSSL_CMP_PKISI *si);
- OSSL_CMP_PKIFREETEXT *ossl_cmp_pkisi_statusstring_get0(const OSSL_CMP_PKISI *si);
- char *ossl_pkisi_snprint(OSSL_CMP_PKISI *si, char *buf, int bufsize);
- =head1 DESCRIPTION
- ossl_cmp_statusinfo_new() creates a new PKIStatusInfo structure and fills it
- with the given values. It sets the status field to B<status>.
- If B<text> is not NULL, it is copied to statusString.
- B<fail_info> is is interpreted as bit pattern for the failInfo field.
- Returns a pointer to the structure on success, or NULL on error.
- ossl_cmp_pkisi_pkistatus_get() returns the PKIStatus of B<si>, or -1 on error.
- ossl_cmp_pkisi_pkifailureinfo_get() returns the PKIFailureInfo bits
- of B<si>, encoded as integer, or -1 on error.
- ossl_cmp_pkisi_pkifailureinfo_check() returns the state of the bit (0 or 1)
- with index B<bit_index> in the PKIFailureInfo of the B<si>, or -1 on error.
- ossl_cmp_pkisi_failinfo_get0() returns a direct pointer to the failInfo
- field contained in B<si>, or NULL on error.
- ossl_cmp_pkisi_statusstring_get0() returns a direct pointer to the statusString
- field contained in B<si>.
- ossl_pkisi_snprint() places at max B<bufsize> characters of human-readable
- error string of B<si> in pre-allocated B<buf>. Returns pointer to the same
- B<buf> containing the string, or NULL on error.
- =head1 NOTES
- CMP is defined in RFC 4210 (and CRMF in RFC 4211).
- =head1 RETURN VALUES
- See the individual functions above.
- =head1 SEE ALSO
- L<OSSL_CMP_CTX_new(3)>, L<ossl_cmp_certreq_new(3)>
- =head1 HISTORY
- The OpenSSL CMP support was added in OpenSSL 3.0.
- =head1 COPYRIGHT
- Copyright 2007-2019 The OpenSSL Project Authors. All Rights Reserved.
- Licensed under the Apache License 2.0 (the "License"). You may not use
- this file except in compliance with the License. You can obtain a copy
- in the file LICENSE in the source distribution or at
- L<https://www.openssl.org/source/license.html>.
- =cut
|