Files

66 lines
1.4 KiB
C

/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#ifndef OPEN62541_TESTING_POLICY_H
#define OPEN62541_TESTING_POLICY_H
#ifdef __cplusplus
extern "C" {
#endif
#include "ua_plugin_securitypolicy.h"
#include "ua_plugin_log.h"
typedef struct funcs_called {
bool asym_enc;
bool asym_dec;
bool sym_enc;
bool sym_dec;
bool asym_sign;
bool asym_verify;
bool sym_sign;
bool sym_verify;
bool newContext;
bool deleteContext;
bool makeCertificateThumbprint;
bool generateKey;
bool generateNonce;
bool setLocalSymEncryptingKey;
bool setLocalSymSigningKey;
bool setLocalSymIv;
bool setRemoteSymEncryptingKey;
bool setRemoteSymSigningKey;
bool setRemoteSymIv;
} funcs_called;
typedef struct key_sizes {
size_t sym_enc_blockSize;
size_t sym_sig_keyLen;
size_t sym_sig_size;
size_t sym_enc_keyLen;
size_t asym_rmt_sig_size;
size_t asym_lcl_sig_size;
size_t asym_rmt_ptext_blocksize;
size_t asym_rmt_blocksize;
size_t asym_rmt_enc_key_size;
size_t asym_lcl_enc_key_size;
} key_sizes;
UA_StatusCode UA_EXPORT
TestingPolicy(UA_SecurityPolicy *policy, UA_ByteString localCertificate,
funcs_called *fCalled, const key_sizes *kSizes);
#ifdef __cplusplus
}
#endif
#endif //OPEN62541_TESTING_POLICY_H