salsa20_xmm6.c 852 B

12345678910111213141516171819202122232425262728293031
  1. #include <stdint.h>
  2. #include "utils.h"
  3. #include "../stream_salsa20.h"
  4. #include "salsa20_xmm6.h"
  5. #ifdef HAVE_AMD64_ASM
  6. #ifdef __cplusplus
  7. extern "C" {
  8. #endif
  9. extern int stream_salsa20_xmm6(unsigned char *c, unsigned long long clen,
  10. const unsigned char *n, const unsigned char *k);
  11. extern int stream_salsa20_xmm6_xor_ic(unsigned char *c, const unsigned char *m,
  12. unsigned long long mlen,
  13. const unsigned char *n,
  14. uint64_t ic, const unsigned char *k);
  15. #ifdef __cplusplus
  16. }
  17. #endif
  18. struct crypto_stream_salsa20_implementation
  19. crypto_stream_salsa20_xmm6_implementation = {
  20. SODIUM_C99(.stream =) stream_salsa20_xmm6,
  21. SODIUM_C99(.stream_xor_ic =) stream_salsa20_xmm6_xor_ic,
  22. };
  23. #endif