1 /* 2 * Copyright 2019-2021 The OpenSSL Project Authors. All Rights Reserved. 3 * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved. 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 OPENSSL_PARAM_BUILD_H 12 # define OPENSSL_PARAM_BUILD_H 13 # pragma once 14 15 # include <openssl/params.h> 16 # include <openssl/types.h> 17 18 # ifdef __cplusplus 19 extern "C" { 20 # endif 21 22 OSSL_PARAM_BLD *OSSL_PARAM_BLD_new(void); 23 OSSL_PARAM *OSSL_PARAM_BLD_to_param(OSSL_PARAM_BLD *bld); 24 void OSSL_PARAM_BLD_free(OSSL_PARAM_BLD *bld); 25 26 int OSSL_PARAM_BLD_push_int(OSSL_PARAM_BLD *bld, const char *key, int val); 27 int OSSL_PARAM_BLD_push_uint(OSSL_PARAM_BLD *bld, const char *key, 28 unsigned int val); 29 int OSSL_PARAM_BLD_push_long(OSSL_PARAM_BLD *bld, const char *key, 30 long int val); 31 int OSSL_PARAM_BLD_push_ulong(OSSL_PARAM_BLD *bld, const char *key, 32 unsigned long int val); 33 int OSSL_PARAM_BLD_push_int32(OSSL_PARAM_BLD *bld, const char *key, 34 int32_t val); 35 int OSSL_PARAM_BLD_push_uint32(OSSL_PARAM_BLD *bld, const char *key, 36 uint32_t val); 37 int OSSL_PARAM_BLD_push_int64(OSSL_PARAM_BLD *bld, const char *key, 38 int64_t val); 39 int OSSL_PARAM_BLD_push_uint64(OSSL_PARAM_BLD *bld, const char *key, 40 uint64_t val); 41 int OSSL_PARAM_BLD_push_size_t(OSSL_PARAM_BLD *bld, const char *key, 42 size_t val); 43 int OSSL_PARAM_BLD_push_time_t(OSSL_PARAM_BLD *bld, const char *key, 44 time_t val); 45 int OSSL_PARAM_BLD_push_double(OSSL_PARAM_BLD *bld, const char *key, 46 double val); 47 int OSSL_PARAM_BLD_push_BN(OSSL_PARAM_BLD *bld, const char *key, 48 const BIGNUM *bn); 49 int OSSL_PARAM_BLD_push_BN_pad(OSSL_PARAM_BLD *bld, const char *key, 50 const BIGNUM *bn, size_t sz); 51 int OSSL_PARAM_BLD_push_utf8_string(OSSL_PARAM_BLD *bld, const char *key, 52 const char *buf, size_t bsize); 53 int OSSL_PARAM_BLD_push_utf8_ptr(OSSL_PARAM_BLD *bld, const char *key, 54 char *buf, size_t bsize); 55 int OSSL_PARAM_BLD_push_octet_string(OSSL_PARAM_BLD *bld, const char *key, 56 const void *buf, size_t bsize); 57 int OSSL_PARAM_BLD_push_octet_ptr(OSSL_PARAM_BLD *bld, const char *key, 58 void *buf, size_t bsize); 59 60 # ifdef __cplusplus 61 } 62 # endif 63 #endif /* OPENSSL_PARAM_BUILD_H */ 64