1/*
2 * Copyright 2018-2023 The OpenSSL Project Authors. All Rights Reserved.
3 * Copyright Siemens AG 2018-2020
4 *
5 * Licensed under the Apache License 2.0 (the "License").  You may not use
6 * this file except in compliance with the License.  You can obtain a copy
7 * in the file LICENSE in the source distribution or at
8 * https://www.openssl.org/source/license.html
9 */
10
11#ifndef OSSL_APPS_CMP_MOCK_SRV_H
12# define OSSL_APPS_CMP_MOCK_SRV_H
13
14# include <openssl/opensslconf.h>
15# ifndef OPENSSL_NO_CMP
16
17#  include <openssl/cmp.h>
18
19OSSL_CMP_SRV_CTX *ossl_cmp_mock_srv_new(OSSL_LIB_CTX *libctx,
20                                        const char *propq);
21void ossl_cmp_mock_srv_free(OSSL_CMP_SRV_CTX *srv_ctx);
22
23int ossl_cmp_mock_srv_set1_certOut(OSSL_CMP_SRV_CTX *srv_ctx, X509 *cert);
24int ossl_cmp_mock_srv_set1_chainOut(OSSL_CMP_SRV_CTX *srv_ctx,
25                                    STACK_OF(X509) *chain);
26int ossl_cmp_mock_srv_set1_caPubsOut(OSSL_CMP_SRV_CTX *srv_ctx,
27                                     STACK_OF(X509) *caPubs);
28int ossl_cmp_mock_srv_set_statusInfo(OSSL_CMP_SRV_CTX *srv_ctx, int status,
29                                     int fail_info, const char *text);
30int ossl_cmp_mock_srv_set_sendError(OSSL_CMP_SRV_CTX *srv_ctx, int bodytype);
31int ossl_cmp_mock_srv_set_pollCount(OSSL_CMP_SRV_CTX *srv_ctx, int count);
32int ossl_cmp_mock_srv_set_checkAfterTime(OSSL_CMP_SRV_CTX *srv_ctx, int sec);
33
34# endif /* !defined(OPENSSL_NO_CMP) */
35#endif /* !defined(OSSL_APPS_CMP_MOCK_SRV_H) */
36