testing_policy.h 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. /* This Source Code Form is subject to the terms of the Mozilla Public
  2. * License, v. 2.0. If a copy of the MPL was not distributed with this
  3. * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
  4. #ifndef OPEN62541_TESTING_POLICY_H
  5. #define OPEN62541_TESTING_POLICY_H
  6. #ifdef __cplusplus
  7. extern "C" {
  8. #endif
  9. #include "ua_plugin_securitypolicy.h"
  10. #include "ua_plugin_log.h"
  11. typedef struct funcs_called {
  12. bool asym_enc;
  13. bool asym_dec;
  14. bool sym_enc;
  15. bool sym_dec;
  16. bool asym_sign;
  17. bool asym_verify;
  18. bool sym_sign;
  19. bool sym_verify;
  20. bool newContext;
  21. bool deleteContext;
  22. bool makeCertificateThumbprint;
  23. bool generateKey;
  24. bool setLocalSymEncryptingKey;
  25. bool setLocalSymSigningKey;
  26. bool setLocalSymIv;
  27. bool setRemoteSymEncryptingKey;
  28. bool setRemoteSymSigningKey;
  29. bool setRemoteSymIv;
  30. } funcs_called;
  31. typedef struct key_sizes {
  32. size_t sym_enc_blockSize;
  33. size_t sym_sig_keyLen;
  34. size_t sym_enc_keyLen;
  35. size_t asym_rmt_sig_size;
  36. size_t asym_lcl_sig_size;
  37. size_t asym_rmt_ptext_blocksize;
  38. size_t asym_rmt_enc_key_size;
  39. size_t asym_lcl_enc_key_size;
  40. } key_sizes;
  41. UA_StatusCode UA_EXPORT
  42. TestingPolicy(UA_SecurityPolicy *policy, const UA_ByteString localCertificate,
  43. funcs_called *fCalled, const key_sizes *kSizes);
  44. #ifdef __cplusplus
  45. }
  46. #endif
  47. #endif //OPEN62541_TESTING_POLICY_H