diff options
author | Hans Nilsson <[email protected]> | 2019-06-14 13:34:15 +0200 |
---|---|---|
committer | Hans Nilsson <[email protected]> | 2019-06-14 13:34:15 +0200 |
commit | 7ef46ad0c2a333e052caef3845090808a4f9c6a7 (patch) | |
tree | 87549cc1281d930447b64771f98fe3ee006766e5 /lib/crypto/c_src/mac.h | |
parent | 1f0ed340c7801ffdd0dc569ee1fdca4197649296 (diff) | |
parent | bfc7e7aab9d08d0fc34a7ba85b3928af5f6578c6 (diff) | |
download | otp-7ef46ad0c2a333e052caef3845090808a4f9c6a7.tar.gz otp-7ef46ad0c2a333e052caef3845090808a4f9c6a7.tar.bz2 otp-7ef46ad0c2a333e052caef3845090808a4f9c6a7.zip |
Merge branch 'maint'
* maint:
crypto: Documentation
crypto: Enable MAC key length checking in mac-table
crypto: Renaming, typing and some polishing
crypto: Begin test of the new mac interface directly.
crypto: Move mac compatibility functions to hmac.c and cmac.c
crypto: Move functions around for better readability
crypto: White space removed at line ends
crypto: Use dirty schedulers for mac_update
crypto: Implement NIFs for the new mac_init, mac_update and mac_final
crypto: Use new mac_nif for hmac, cmac and poly1305
crypto: Refactor for readability
crypto: Use dirty schedulers for the new mac_nif if large data
crypto: MAC nif unifying HMAC, CMAC and POLY1305
crypto: Re-structure cmac and hmac test vector handling
crypto: Enable CMAC tests for aes-128-cbc and aes-256-cbc
crypto: Remove warnings when linking with LibreSSL
Diffstat (limited to 'lib/crypto/c_src/mac.h')
-rw-r--r-- | lib/crypto/c_src/mac.h | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/lib/crypto/c_src/mac.h b/lib/crypto/c_src/mac.h new file mode 100644 index 0000000000..053a331324 --- /dev/null +++ b/lib/crypto/c_src/mac.h @@ -0,0 +1,38 @@ +/* + * %CopyrightBegin% + * + * Copyright Ericsson AB 2010-2018. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * %CopyrightEnd% + */ + +#ifndef E_MAC_H__ +#define E_MAC_H__ 1 + +#include "common.h" + +int init_mac_ctx(ErlNifEnv *env); + +void init_mac_types(ErlNifEnv* env); + +ERL_NIF_TERM mac_types_as_list(ErlNifEnv* env); + +ERL_NIF_TERM mac_nif(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]); + +ERL_NIF_TERM mac_init_nif(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]); +ERL_NIF_TERM mac_update_nif(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]); +ERL_NIF_TERM mac_final_nif(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]); + +#endif /* E_MAC_H__ */ |