Team Ai
Datasetpublic

codekingpro/portable-devtools

sourceHugging Faceupdated 5mo agoView on Hugging Face
1likes16kdownloads
params.h161 linesDownload Raw Back to openssl
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 use6 * this file except in compliance with the License.  You can obtain a copy7 * in the file LICENSE in the source distribution or at8 * https://www.openssl.org/source/license.html9 */10 11#ifndef OPENSSL_PARAMS_H12# define OPENSSL_PARAMS_H13# pragma once14 15# include <openssl/core.h>16# include <openssl/bn.h>17 18# ifdef  __cplusplus19extern "C" {20# endif21 22# define OSSL_PARAM_UNMODIFIED ((size_t)-1)23 24# define OSSL_PARAM_END \25    { NULL, 0, NULL, 0, 0 }26 27# define OSSL_PARAM_DEFN(key, type, addr, sz)    \28    { (key), (type), (addr), (sz), OSSL_PARAM_UNMODIFIED }29 30/* Basic parameter types without return sizes */31# define OSSL_PARAM_int(key, addr) \32    OSSL_PARAM_DEFN((key), OSSL_PARAM_INTEGER, (addr), sizeof(int))33# define OSSL_PARAM_uint(key, addr) \34    OSSL_PARAM_DEFN((key), OSSL_PARAM_UNSIGNED_INTEGER, (addr), \35                    sizeof(unsigned int))36# define OSSL_PARAM_long(key, addr) \37    OSSL_PARAM_DEFN((key), OSSL_PARAM_INTEGER, (addr), sizeof(long int))38# define OSSL_PARAM_ulong(key, addr) \39    OSSL_PARAM_DEFN((key), OSSL_PARAM_UNSIGNED_INTEGER, (addr), \40                    sizeof(unsigned long int))41# define OSSL_PARAM_int32(key, addr) \42    OSSL_PARAM_DEFN((key), OSSL_PARAM_INTEGER, (addr), sizeof(int32_t))43# define OSSL_PARAM_uint32(key, addr) \44    OSSL_PARAM_DEFN((key), OSSL_PARAM_UNSIGNED_INTEGER, (addr), \45                    sizeof(uint32_t))46# define OSSL_PARAM_int64(key, addr) \47    OSSL_PARAM_DEFN((key), OSSL_PARAM_INTEGER, (addr), sizeof(int64_t))48# define OSSL_PARAM_uint64(key, addr) \49    OSSL_PARAM_DEFN((key), OSSL_PARAM_UNSIGNED_INTEGER, (addr), \50                    sizeof(uint64_t))51# define OSSL_PARAM_size_t(key, addr) \52    OSSL_PARAM_DEFN((key), OSSL_PARAM_UNSIGNED_INTEGER, (addr), sizeof(size_t))53# define OSSL_PARAM_time_t(key, addr) \54    OSSL_PARAM_DEFN((key), OSSL_PARAM_INTEGER, (addr), sizeof(time_t))55# define OSSL_PARAM_double(key, addr) \56    OSSL_PARAM_DEFN((key), OSSL_PARAM_REAL, (addr), sizeof(double))57 58# define OSSL_PARAM_BN(key, bn, sz) \59    OSSL_PARAM_DEFN((key), OSSL_PARAM_UNSIGNED_INTEGER, (bn), (sz))60# define OSSL_PARAM_utf8_string(key, addr, sz) \61    OSSL_PARAM_DEFN((key), OSSL_PARAM_UTF8_STRING, (addr), sz)62# define OSSL_PARAM_octet_string(key, addr, sz) \63    OSSL_PARAM_DEFN((key), OSSL_PARAM_OCTET_STRING, (addr), sz)64 65# define OSSL_PARAM_utf8_ptr(key, addr, sz) \66    OSSL_PARAM_DEFN((key), OSSL_PARAM_UTF8_PTR, (addr), sz)67# define OSSL_PARAM_octet_ptr(key, addr, sz) \68    OSSL_PARAM_DEFN((key), OSSL_PARAM_OCTET_PTR, (addr), sz)69 70/* Search an OSSL_PARAM array for a matching name */71OSSL_PARAM *OSSL_PARAM_locate(OSSL_PARAM *p, const char *key);72const OSSL_PARAM *OSSL_PARAM_locate_const(const OSSL_PARAM *p, const char *key);73 74/* Basic parameter type run-time construction */75OSSL_PARAM OSSL_PARAM_construct_int(const char *key, int *buf);76OSSL_PARAM OSSL_PARAM_construct_uint(const char *key, unsigned int *buf);77OSSL_PARAM OSSL_PARAM_construct_long(const char *key, long int *buf);78OSSL_PARAM OSSL_PARAM_construct_ulong(const char *key, unsigned long int *buf);79OSSL_PARAM OSSL_PARAM_construct_int32(const char *key, int32_t *buf);80OSSL_PARAM OSSL_PARAM_construct_uint32(const char *key, uint32_t *buf);81OSSL_PARAM OSSL_PARAM_construct_int64(const char *key, int64_t *buf);82OSSL_PARAM OSSL_PARAM_construct_uint64(const char *key, uint64_t *buf);83OSSL_PARAM OSSL_PARAM_construct_size_t(const char *key, size_t *buf);84OSSL_PARAM OSSL_PARAM_construct_time_t(const char *key, time_t *buf);85OSSL_PARAM OSSL_PARAM_construct_BN(const char *key, unsigned char *buf,86                                   size_t bsize);87OSSL_PARAM OSSL_PARAM_construct_double(const char *key, double *buf);88OSSL_PARAM OSSL_PARAM_construct_utf8_string(const char *key, char *buf,89                                            size_t bsize);90OSSL_PARAM OSSL_PARAM_construct_utf8_ptr(const char *key, char **buf,91                                         size_t bsize);92OSSL_PARAM OSSL_PARAM_construct_octet_string(const char *key, void *buf,93                                             size_t bsize);94OSSL_PARAM OSSL_PARAM_construct_octet_ptr(const char *key, void **buf,95                                          size_t bsize);96OSSL_PARAM OSSL_PARAM_construct_end(void);97 98int OSSL_PARAM_allocate_from_text(OSSL_PARAM *to,99                                  const OSSL_PARAM *paramdefs,100                                  const char *key, const char *value,101                                  size_t value_n, int *found);102 103int OSSL_PARAM_get_int(const OSSL_PARAM *p, int *val);104int OSSL_PARAM_get_uint(const OSSL_PARAM *p, unsigned int *val);105int OSSL_PARAM_get_long(const OSSL_PARAM *p, long int *val);106int OSSL_PARAM_get_ulong(const OSSL_PARAM *p, unsigned long int *val);107int OSSL_PARAM_get_int32(const OSSL_PARAM *p, int32_t *val);108int OSSL_PARAM_get_uint32(const OSSL_PARAM *p, uint32_t *val);109int OSSL_PARAM_get_int64(const OSSL_PARAM *p, int64_t *val);110int OSSL_PARAM_get_uint64(const OSSL_PARAM *p, uint64_t *val);111int OSSL_PARAM_get_size_t(const OSSL_PARAM *p, size_t *val);112int OSSL_PARAM_get_time_t(const OSSL_PARAM *p, time_t *val);113 114int OSSL_PARAM_set_int(OSSL_PARAM *p, int val);115int OSSL_PARAM_set_uint(OSSL_PARAM *p, unsigned int val);116int OSSL_PARAM_set_long(OSSL_PARAM *p, long int val);117int OSSL_PARAM_set_ulong(OSSL_PARAM *p, unsigned long int val);118int OSSL_PARAM_set_int32(OSSL_PARAM *p, int32_t val);119int OSSL_PARAM_set_uint32(OSSL_PARAM *p, uint32_t val);120int OSSL_PARAM_set_int64(OSSL_PARAM *p, int64_t val);121int OSSL_PARAM_set_uint64(OSSL_PARAM *p, uint64_t val);122int OSSL_PARAM_set_size_t(OSSL_PARAM *p, size_t val);123int OSSL_PARAM_set_time_t(OSSL_PARAM *p, time_t val);124 125int OSSL_PARAM_get_double(const OSSL_PARAM *p, double *val);126int OSSL_PARAM_set_double(OSSL_PARAM *p, double val);127 128int OSSL_PARAM_get_BN(const OSSL_PARAM *p, BIGNUM **val);129int OSSL_PARAM_set_BN(OSSL_PARAM *p, const BIGNUM *val);130 131int OSSL_PARAM_get_utf8_string(const OSSL_PARAM *p, char **val, size_t max_len);132int OSSL_PARAM_set_utf8_string(OSSL_PARAM *p, const char *val);133 134int OSSL_PARAM_get_octet_string(const OSSL_PARAM *p, void **val, size_t max_len,135                                size_t *used_len);136int OSSL_PARAM_set_octet_string(OSSL_PARAM *p, const void *val, size_t len);137 138int OSSL_PARAM_get_utf8_ptr(const OSSL_PARAM *p, const char **val);139int OSSL_PARAM_set_utf8_ptr(OSSL_PARAM *p, const char *val);140 141int OSSL_PARAM_get_octet_ptr(const OSSL_PARAM *p, const void **val,142                             size_t *used_len);143int OSSL_PARAM_set_octet_ptr(OSSL_PARAM *p, const void *val,144                             size_t used_len);145 146int OSSL_PARAM_get_utf8_string_ptr(const OSSL_PARAM *p, const char **val);147int OSSL_PARAM_get_octet_string_ptr(const OSSL_PARAM *p, const void **val,148                                    size_t *used_len);149 150int OSSL_PARAM_modified(const OSSL_PARAM *p);151void OSSL_PARAM_set_all_unmodified(OSSL_PARAM *p);152 153OSSL_PARAM *OSSL_PARAM_dup(const OSSL_PARAM *p);154OSSL_PARAM *OSSL_PARAM_merge(const OSSL_PARAM *p1, const OSSL_PARAM *p2);155void OSSL_PARAM_free(OSSL_PARAM *p);156 157# ifdef  __cplusplus158}159# endif160#endif161 
codekingpro/portable-devtools · Team Ai