manpagez: man pages & more
man OCSP_REQUEST_new(3)
Home | html | info | man
OCSP_REQUEST_NEW(3ossl)             OpenSSL            OCSP_REQUEST_NEW(3ossl)



NAME

       OCSP_REQUEST_new, OCSP_REQUEST_free, OCSP_request_add0_id,
       OCSP_request_sign, OCSP_request_add1_cert, OCSP_request_onereq_count,
       OCSP_request_onereq_get0 - OCSP request functions


SYNOPSIS

        #include <openssl/ocsp.h>

        OCSP_REQUEST *OCSP_REQUEST_new(void);
        void OCSP_REQUEST_free(OCSP_REQUEST *req);

        OCSP_ONEREQ *OCSP_request_add0_id(OCSP_REQUEST *req, OCSP_CERTID *cid);

        int OCSP_request_sign(OCSP_REQUEST *req,
                              X509 *signer, EVP_PKEY *key, const EVP_MD *dgst,
                              STACK_OF(X509) *certs, unsigned long flags);

        int OCSP_request_add1_cert(OCSP_REQUEST *req, X509 *cert);

        int OCSP_request_onereq_count(OCSP_REQUEST *req);
        OCSP_ONEREQ *OCSP_request_onereq_get0(OCSP_REQUEST *req, int i);


DESCRIPTION

       OCSP_REQUEST_new(3) allocates and returns an empty OCSP_REQUEST
       structure.

       OCSP_REQUEST_free() frees up the request structure req.  If the
       argument is NULL, nothing is done.

       OCSP_request_add0_id() adds certificate ID cid to req. It returns the
       OCSP_ONEREQ structure added so an application can add additional
       extensions to the request. The id parameter MUST NOT be freed up after
       the operation.

       OCSP_request_sign() signs OCSP request req using certificate signer,
       private key key, digest dgst and additional certificates certs. If the
       flags option OCSP_NOCERTS is set then no certificates will be included
       in the request.

       OCSP_request_add1_cert() adds certificate cert to request req. The
       application is responsible for freeing up cert after use.

       OCSP_request_onereq_count() returns the total number of OCSP_ONEREQ
       structures in req.

       OCSP_request_onereq_get0() returns an internal pointer to the
       OCSP_ONEREQ contained in req of index i. The index value i runs from 0
       to OCSP_request_onereq_count(req) - 1.


RETURN VALUES

       OCSP_REQUEST_new(3) returns an empty OCSP_REQUEST structure or NULL if
       an error occurred.

       OCSP_request_add0_id() returns the OCSP_ONEREQ structure containing cid
       or NULL if an error occurred.

       OCSP_request_sign() and OCSP_request_add1_cert() return 1 for success
       and 0 for failure.

       OCSP_request_onereq_count() returns the total number of OCSP_ONEREQ
       structures in req and -1 on error.

       OCSP_request_onereq_get0() returns a pointer to an OCSP_ONEREQ
       structure or NULL if the index value is out or range.


NOTES

       An OCSP request structure contains one or more OCSP_ONEREQ structures
       corresponding to each certificate.

       OCSP_request_onereq_count() and OCSP_request_onereq_get0() are mainly
       used by OCSP responders.


EXAMPLES

       Create an OCSP_REQUEST structure for certificate cert with issuer
       issuer:

        OCSP_REQUEST *req;
        OCSP_ID *cid;

        req = OCSP_REQUEST_new();
        if (req == NULL)
           /* error */
        cid = OCSP_cert_to_id(EVP_sha1(), cert, issuer);
        if (cid == NULL)
           /* error */

        if (OCSP_REQUEST_add0_id(req, cid) == NULL)
           /* error */

        /* Do something with req, e.g. query responder */

        OCSP_REQUEST_free(req);


SEE ALSO

       crypto(7), OCSP_cert_to_id(3), OCSP_request_add1_nonce(3),
       OCSP_resp_find_status(3), OCSP_response_status(3), OCSP_sendreq_new(3)


COPYRIGHT

       Copyright 2015-2024 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
       <https://www.openssl.org/source/license.html>.

3.3.2                             2024-09-04           OCSP_REQUEST_NEW(3ossl)

openssl 3.3.2 - Generated Sun Sep 15 15:57:44 CDT 2024
© manpagez.com 2000-2024
Individual documents may contain additional copyright information.