der_ecx_key.c 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. /*
  2. * Copyright 2020 The OpenSSL Project Authors. All Rights Reserved.
  3. *
  4. * Licensed under the Apache License 2.0 (the "License"). You may not use
  5. * this file except in compliance with the License. You can obtain a copy
  6. * in the file LICENSE in the source distribution or at
  7. * https://www.openssl.org/source/license.html
  8. */
  9. #include <openssl/obj_mac.h>
  10. #include "internal/packet.h"
  11. #include "prov/der_ecx.h"
  12. int ossl_DER_w_algorithmIdentifier_X25519(WPACKET *pkt, int cont, ECX_KEY *ec)
  13. {
  14. return ossl_DER_w_begin_sequence(pkt, cont)
  15. /* No parameters (yet?) */
  16. && ossl_DER_w_precompiled(pkt, -1, ossl_der_oid_id_X25519,
  17. sizeof(ossl_der_oid_id_X25519))
  18. && ossl_DER_w_end_sequence(pkt, cont);
  19. }
  20. int ossl_DER_w_algorithmIdentifier_X448(WPACKET *pkt, int cont, ECX_KEY *ec)
  21. {
  22. return ossl_DER_w_begin_sequence(pkt, cont)
  23. /* No parameters (yet?) */
  24. && ossl_DER_w_precompiled(pkt, -1, ossl_der_oid_id_X448,
  25. sizeof(ossl_der_oid_id_X448))
  26. && ossl_DER_w_end_sequence(pkt, cont);
  27. }
  28. int ossl_DER_w_algorithmIdentifier_ED25519(WPACKET *pkt, int cont, ECX_KEY *ec)
  29. {
  30. return ossl_DER_w_begin_sequence(pkt, cont)
  31. /* No parameters (yet?) */
  32. && ossl_DER_w_precompiled(pkt, -1, ossl_der_oid_id_Ed25519,
  33. sizeof(ossl_der_oid_id_Ed25519))
  34. && ossl_DER_w_end_sequence(pkt, cont);
  35. }
  36. int ossl_DER_w_algorithmIdentifier_ED448(WPACKET *pkt, int cont, ECX_KEY *ec)
  37. {
  38. return ossl_DER_w_begin_sequence(pkt, cont)
  39. /* No parameters (yet?) */
  40. && ossl_DER_w_precompiled(pkt, -1, ossl_der_oid_id_Ed448,
  41. sizeof(ossl_der_oid_id_Ed448))
  42. && ossl_DER_w_end_sequence(pkt, cont);
  43. }