adare_dilithium5_0.2.3_48a77cb5/src/macos/adare_dilithium5-inners.ads

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
with Interfaces.C;
with System;

package adare_dilithium5.inners with Pure is

  function internal_dilithium5_keypair
    (public_key_i   :   System.Address; -- out
      private_key_i  :   System.Address  -- out
    ) return Interfaces.C.int

    with Import => True, Convention => C, External_Name => "PQCLEAN_DILITHIUM5_CLEAN_crypto_sign_keypair";

  function internal_dilithium5_sign_create -- only signture, without original message combined
    (signature_i        :   System.Address; -- out
      signature_length_i :   System.Address; -- out
      message_i          :   System.Address; -- in
      message_length_i   :   Interfaces.C.size_t; -- in
      secret_key_i       :   System.Address  -- in
    ) return Interfaces.C.int

    with Import => True, Convention => C, External_Name => "PQCLEAN_DILITHIUM5_CLEAN_crypto_sign_signature";

  function internal_dilithium5_sign_verify -- only signture, without original message combined
    (signature_i        :   System.Address; -- in
      signature_length_i :   Interfaces.C.size_t; -- in
      message_i          :   System.Address; -- in
      message_length_i   :   Interfaces.C.size_t; -- in
      public_key_i       :   System.Address  -- in
    ) return Interfaces.C.int

    with Import => True, Convention => C, External_Name => "PQCLEAN_DILITHIUM5_CLEAN_crypto_sign_verify";


  function internal_dilithium5_sign -- message and signature combined
    (signature_message_i        :   System.Address; -- out
      signature_message_length_i :   System.Address; -- out
      message_i          :   System.Address; -- in
      message_length_i   :   Interfaces.C.size_t; -- in
      secret_key_i       :   System.Address  -- in
    ) return Interfaces.C.int

    with Import => True, Convention => C, External_Name => "PQCLEAN_DILITHIUM5_CLEAN_crypto_sign";

  function internal_dilithium5_open  -- message and signature combined
    (message_i          :   System.Address; -- out
      message_length_i   :   System.Address; -- out
      signature_message_i        :   System.Address; -- in
      signature_message_length_i :   Interfaces.C.size_t; -- in
      public_key_i       :   System.Address  -- in
    ) return Interfaces.C.int

    with Import => True, Convention => C, External_Name => "PQCLEAN_DILITHIUM5_CLEAN_crypto_sign_open";


end adare_dilithium5.inners;