From 7d76e9619bb292dc62988dd079b60e9c60e83f4b Mon Sep 17 00:00:00 2001 From: Anas Nashif Date: Sat, 28 May 2016 14:41:55 -0400 Subject: [PATCH] ext: move tinycrypt to ext/lib Tinycrypt is maintained at github and thus should be treated as an external library and hosted under ext/. Change-Id: I4c4a3bcdacf01d4922919e5ea1f9dec21a19cd37 Signed-off-by: Anas Nashif --- MAINTAINERS | 5 +++++ doc/doxygen.config | 2 +- ext/Kbuild | 1 + ext/Kconfig | 2 ++ ext/Makefile | 3 +-- ext/lib/Kbuild | 1 + ext/lib/Makefile | 4 ++++ ext/lib/crypto/Kconfig | 21 +++++++++++++++++++ {lib => ext/lib}/crypto/Makefile | 0 {lib => ext/lib}/crypto/tinycrypt/Kconfig | 0 {lib => ext/lib}/crypto/tinycrypt/Makefile | 2 +- {lib => ext/lib}/crypto/tinycrypt/README | 0 .../crypto/tinycrypt/include/tinycrypt/aes.h | 0 .../tinycrypt/include/tinycrypt/cbc_mode.h | 0 .../tinycrypt/include/tinycrypt/ccm_mode.h | 0 .../tinycrypt/include/tinycrypt/cmac_mode.h | 0 .../tinycrypt/include/tinycrypt/constants.h | 0 .../tinycrypt/include/tinycrypt/ctr_mode.h | 0 .../crypto/tinycrypt/include/tinycrypt/ecc.h | 0 .../tinycrypt/include/tinycrypt/ecc_dh.h | 0 .../tinycrypt/include/tinycrypt/ecc_dsa.h | 0 .../crypto/tinycrypt/include/tinycrypt/hmac.h | 0 .../tinycrypt/include/tinycrypt/hmac_prng.h | 0 .../tinycrypt/include/tinycrypt/sha256.h | 0 .../tinycrypt/include/tinycrypt/utils.h | 0 .../crypto/tinycrypt/source/aes_decrypt.c | 0 .../crypto/tinycrypt/source/aes_encrypt.c | 0 .../lib}/crypto/tinycrypt/source/cbc_mode.c | 0 .../lib}/crypto/tinycrypt/source/ccm_mode.c | 0 .../lib}/crypto/tinycrypt/source/cmac_mode.c | 0 .../lib}/crypto/tinycrypt/source/ctr_mode.c | 0 .../lib}/crypto/tinycrypt/source/ecc.c | 0 .../lib}/crypto/tinycrypt/source/ecc_dh.c | 0 .../lib}/crypto/tinycrypt/source/ecc_dsa.c | 0 .../lib}/crypto/tinycrypt/source/hmac.c | 0 .../lib}/crypto/tinycrypt/source/hmac_prng.c | 0 .../lib}/crypto/tinycrypt/source/sha256.c | 0 .../lib}/crypto/tinycrypt/source/utils.c | 0 lib/Kbuild | 1 - lib/Makefile | 5 ----- tests/crypto/test_aes/src/Makefile | 2 +- tests/crypto/test_cbc/src/Makefile | 3 ++- tests/crypto/test_ccm_mode/src/Makefile | 3 ++- tests/crypto/test_cmac_mode/src/Makefile | 3 ++- tests/crypto/test_ctr/src/Makefile | 2 +- tests/crypto/test_hmac/src/Makefile | 3 ++- tests/crypto/test_prng/src/Makefile | 3 ++- tests/crypto/test_sha256/src/Makefile | 3 ++- 48 files changed, 51 insertions(+), 18 deletions(-) create mode 100644 ext/lib/Kbuild create mode 100644 ext/lib/Makefile create mode 100644 ext/lib/crypto/Kconfig rename {lib => ext/lib}/crypto/Makefile (100%) rename {lib => ext/lib}/crypto/tinycrypt/Kconfig (100%) rename {lib => ext/lib}/crypto/tinycrypt/Makefile (91%) rename {lib => ext/lib}/crypto/tinycrypt/README (100%) rename {lib => ext/lib}/crypto/tinycrypt/include/tinycrypt/aes.h (100%) rename {lib => ext/lib}/crypto/tinycrypt/include/tinycrypt/cbc_mode.h (100%) rename {lib => ext/lib}/crypto/tinycrypt/include/tinycrypt/ccm_mode.h (100%) rename {lib => ext/lib}/crypto/tinycrypt/include/tinycrypt/cmac_mode.h (100%) rename {lib => ext/lib}/crypto/tinycrypt/include/tinycrypt/constants.h (100%) rename {lib => ext/lib}/crypto/tinycrypt/include/tinycrypt/ctr_mode.h (100%) rename {lib => ext/lib}/crypto/tinycrypt/include/tinycrypt/ecc.h (100%) rename {lib => ext/lib}/crypto/tinycrypt/include/tinycrypt/ecc_dh.h (100%) rename {lib => ext/lib}/crypto/tinycrypt/include/tinycrypt/ecc_dsa.h (100%) rename {lib => ext/lib}/crypto/tinycrypt/include/tinycrypt/hmac.h (100%) rename {lib => ext/lib}/crypto/tinycrypt/include/tinycrypt/hmac_prng.h (100%) rename {lib => ext/lib}/crypto/tinycrypt/include/tinycrypt/sha256.h (100%) rename {lib => ext/lib}/crypto/tinycrypt/include/tinycrypt/utils.h (100%) rename {lib => ext/lib}/crypto/tinycrypt/source/aes_decrypt.c (100%) rename {lib => ext/lib}/crypto/tinycrypt/source/aes_encrypt.c (100%) rename {lib => ext/lib}/crypto/tinycrypt/source/cbc_mode.c (100%) rename {lib => ext/lib}/crypto/tinycrypt/source/ccm_mode.c (100%) rename {lib => ext/lib}/crypto/tinycrypt/source/cmac_mode.c (100%) rename {lib => ext/lib}/crypto/tinycrypt/source/ctr_mode.c (100%) rename {lib => ext/lib}/crypto/tinycrypt/source/ecc.c (100%) rename {lib => ext/lib}/crypto/tinycrypt/source/ecc_dh.c (100%) rename {lib => ext/lib}/crypto/tinycrypt/source/ecc_dsa.c (100%) rename {lib => ext/lib}/crypto/tinycrypt/source/hmac.c (100%) rename {lib => ext/lib}/crypto/tinycrypt/source/hmac_prng.c (100%) rename {lib => ext/lib}/crypto/tinycrypt/source/sha256.c (100%) rename {lib => ext/lib}/crypto/tinycrypt/source/utils.c (100%) diff --git a/MAINTAINERS b/MAINTAINERS index 1fca6d8559a..d36102860d0 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -80,6 +80,11 @@ M: Anas Nashif S: Supported F: ext/hal/qmsi/ +TINYCRYPT +M: Constanza Heath +S: Supported +F: ext/lib/crypto/tinycrypt + THE REST M: Anas Nashif L: devel@lists.zephyrproject.com diff --git a/doc/doxygen.config b/doc/doxygen.config index f67934c5ed1..e5382be95a2 100644 --- a/doc/doxygen.config +++ b/doc/doxygen.config @@ -101,7 +101,7 @@ INPUT = \ include/ \ include/misc/ \ lib/libc/minimal/include/ \ - lib/crypto/tinycrypt/include/ + ext/lib/crypto/tinycrypt/include/ INPUT_ENCODING = UTF-8 FILE_PATTERNS = "*.c" "*.h" "*.S" RECURSIVE = YES diff --git a/ext/Kbuild b/ext/Kbuild index 31beb33b62d..0b61c80f605 100644 --- a/ext/Kbuild +++ b/ext/Kbuild @@ -1 +1,2 @@ obj-y += hal/ +obj-y += lib/ diff --git a/ext/Kconfig b/ext/Kconfig index 6a80005b009..0d136851b5f 100644 --- a/ext/Kconfig +++ b/ext/Kconfig @@ -20,4 +20,6 @@ menu "External Sources" source "ext/hal/Kconfig" +source "ext/lib/crypto/Kconfig" + endmenu diff --git a/ext/Makefile b/ext/Makefile index 9a93de7dd09..0a604ff531e 100644 --- a/ext/Makefile +++ b/ext/Makefile @@ -1,3 +1,2 @@ - - +include $(srctree)/ext/lib/Makefile include $(srctree)/ext/hal/Makefile diff --git a/ext/lib/Kbuild b/ext/lib/Kbuild new file mode 100644 index 00000000000..755bcbe19bd --- /dev/null +++ b/ext/lib/Kbuild @@ -0,0 +1 @@ +obj-y += crypto/ diff --git a/ext/lib/Makefile b/ext/lib/Makefile new file mode 100644 index 00000000000..118113c0e38 --- /dev/null +++ b/ext/lib/Makefile @@ -0,0 +1,4 @@ +ifdef CONFIG_TINYCRYPT +ZEPHYRINCLUDE += -I$(srctree)/ext/lib/crypto/tinycrypt/include +endif + diff --git a/ext/lib/crypto/Kconfig b/ext/lib/crypto/Kconfig new file mode 100644 index 00000000000..284bad6601e --- /dev/null +++ b/ext/lib/crypto/Kconfig @@ -0,0 +1,21 @@ +# +# Copyright (c) 2016 Intel Corporation +# +# 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. +# + +menu "Cryptography" + +source "ext/lib/crypto/tinycrypt/Kconfig" + +endmenu diff --git a/lib/crypto/Makefile b/ext/lib/crypto/Makefile similarity index 100% rename from lib/crypto/Makefile rename to ext/lib/crypto/Makefile diff --git a/lib/crypto/tinycrypt/Kconfig b/ext/lib/crypto/tinycrypt/Kconfig similarity index 100% rename from lib/crypto/tinycrypt/Kconfig rename to ext/lib/crypto/tinycrypt/Kconfig diff --git a/lib/crypto/tinycrypt/Makefile b/ext/lib/crypto/tinycrypt/Makefile similarity index 91% rename from lib/crypto/tinycrypt/Makefile rename to ext/lib/crypto/tinycrypt/Makefile index 1ffccdc9eee..bcfcde1996b 100644 --- a/lib/crypto/tinycrypt/Makefile +++ b/ext/lib/crypto/tinycrypt/Makefile @@ -1,4 +1,4 @@ -subdir-ccflags-y +=-I$(srctree)/lib/crypto/tinycrypt/include +subdir-ccflags-y +=-I$(srctree)/ext/lib/crypto/tinycrypt/include obj-$(CONFIG_TINYCRYPT) := source/utils.o obj-$(CONFIG_TINYCRYPT_ECC_DH) += source/ecc_dh.o source/ecc.o diff --git a/lib/crypto/tinycrypt/README b/ext/lib/crypto/tinycrypt/README similarity index 100% rename from lib/crypto/tinycrypt/README rename to ext/lib/crypto/tinycrypt/README diff --git a/lib/crypto/tinycrypt/include/tinycrypt/aes.h b/ext/lib/crypto/tinycrypt/include/tinycrypt/aes.h similarity index 100% rename from lib/crypto/tinycrypt/include/tinycrypt/aes.h rename to ext/lib/crypto/tinycrypt/include/tinycrypt/aes.h diff --git a/lib/crypto/tinycrypt/include/tinycrypt/cbc_mode.h b/ext/lib/crypto/tinycrypt/include/tinycrypt/cbc_mode.h similarity index 100% rename from lib/crypto/tinycrypt/include/tinycrypt/cbc_mode.h rename to ext/lib/crypto/tinycrypt/include/tinycrypt/cbc_mode.h diff --git a/lib/crypto/tinycrypt/include/tinycrypt/ccm_mode.h b/ext/lib/crypto/tinycrypt/include/tinycrypt/ccm_mode.h similarity index 100% rename from lib/crypto/tinycrypt/include/tinycrypt/ccm_mode.h rename to ext/lib/crypto/tinycrypt/include/tinycrypt/ccm_mode.h diff --git a/lib/crypto/tinycrypt/include/tinycrypt/cmac_mode.h b/ext/lib/crypto/tinycrypt/include/tinycrypt/cmac_mode.h similarity index 100% rename from lib/crypto/tinycrypt/include/tinycrypt/cmac_mode.h rename to ext/lib/crypto/tinycrypt/include/tinycrypt/cmac_mode.h diff --git a/lib/crypto/tinycrypt/include/tinycrypt/constants.h b/ext/lib/crypto/tinycrypt/include/tinycrypt/constants.h similarity index 100% rename from lib/crypto/tinycrypt/include/tinycrypt/constants.h rename to ext/lib/crypto/tinycrypt/include/tinycrypt/constants.h diff --git a/lib/crypto/tinycrypt/include/tinycrypt/ctr_mode.h b/ext/lib/crypto/tinycrypt/include/tinycrypt/ctr_mode.h similarity index 100% rename from lib/crypto/tinycrypt/include/tinycrypt/ctr_mode.h rename to ext/lib/crypto/tinycrypt/include/tinycrypt/ctr_mode.h diff --git a/lib/crypto/tinycrypt/include/tinycrypt/ecc.h b/ext/lib/crypto/tinycrypt/include/tinycrypt/ecc.h similarity index 100% rename from lib/crypto/tinycrypt/include/tinycrypt/ecc.h rename to ext/lib/crypto/tinycrypt/include/tinycrypt/ecc.h diff --git a/lib/crypto/tinycrypt/include/tinycrypt/ecc_dh.h b/ext/lib/crypto/tinycrypt/include/tinycrypt/ecc_dh.h similarity index 100% rename from lib/crypto/tinycrypt/include/tinycrypt/ecc_dh.h rename to ext/lib/crypto/tinycrypt/include/tinycrypt/ecc_dh.h diff --git a/lib/crypto/tinycrypt/include/tinycrypt/ecc_dsa.h b/ext/lib/crypto/tinycrypt/include/tinycrypt/ecc_dsa.h similarity index 100% rename from lib/crypto/tinycrypt/include/tinycrypt/ecc_dsa.h rename to ext/lib/crypto/tinycrypt/include/tinycrypt/ecc_dsa.h diff --git a/lib/crypto/tinycrypt/include/tinycrypt/hmac.h b/ext/lib/crypto/tinycrypt/include/tinycrypt/hmac.h similarity index 100% rename from lib/crypto/tinycrypt/include/tinycrypt/hmac.h rename to ext/lib/crypto/tinycrypt/include/tinycrypt/hmac.h diff --git a/lib/crypto/tinycrypt/include/tinycrypt/hmac_prng.h b/ext/lib/crypto/tinycrypt/include/tinycrypt/hmac_prng.h similarity index 100% rename from lib/crypto/tinycrypt/include/tinycrypt/hmac_prng.h rename to ext/lib/crypto/tinycrypt/include/tinycrypt/hmac_prng.h diff --git a/lib/crypto/tinycrypt/include/tinycrypt/sha256.h b/ext/lib/crypto/tinycrypt/include/tinycrypt/sha256.h similarity index 100% rename from lib/crypto/tinycrypt/include/tinycrypt/sha256.h rename to ext/lib/crypto/tinycrypt/include/tinycrypt/sha256.h diff --git a/lib/crypto/tinycrypt/include/tinycrypt/utils.h b/ext/lib/crypto/tinycrypt/include/tinycrypt/utils.h similarity index 100% rename from lib/crypto/tinycrypt/include/tinycrypt/utils.h rename to ext/lib/crypto/tinycrypt/include/tinycrypt/utils.h diff --git a/lib/crypto/tinycrypt/source/aes_decrypt.c b/ext/lib/crypto/tinycrypt/source/aes_decrypt.c similarity index 100% rename from lib/crypto/tinycrypt/source/aes_decrypt.c rename to ext/lib/crypto/tinycrypt/source/aes_decrypt.c diff --git a/lib/crypto/tinycrypt/source/aes_encrypt.c b/ext/lib/crypto/tinycrypt/source/aes_encrypt.c similarity index 100% rename from lib/crypto/tinycrypt/source/aes_encrypt.c rename to ext/lib/crypto/tinycrypt/source/aes_encrypt.c diff --git a/lib/crypto/tinycrypt/source/cbc_mode.c b/ext/lib/crypto/tinycrypt/source/cbc_mode.c similarity index 100% rename from lib/crypto/tinycrypt/source/cbc_mode.c rename to ext/lib/crypto/tinycrypt/source/cbc_mode.c diff --git a/lib/crypto/tinycrypt/source/ccm_mode.c b/ext/lib/crypto/tinycrypt/source/ccm_mode.c similarity index 100% rename from lib/crypto/tinycrypt/source/ccm_mode.c rename to ext/lib/crypto/tinycrypt/source/ccm_mode.c diff --git a/lib/crypto/tinycrypt/source/cmac_mode.c b/ext/lib/crypto/tinycrypt/source/cmac_mode.c similarity index 100% rename from lib/crypto/tinycrypt/source/cmac_mode.c rename to ext/lib/crypto/tinycrypt/source/cmac_mode.c diff --git a/lib/crypto/tinycrypt/source/ctr_mode.c b/ext/lib/crypto/tinycrypt/source/ctr_mode.c similarity index 100% rename from lib/crypto/tinycrypt/source/ctr_mode.c rename to ext/lib/crypto/tinycrypt/source/ctr_mode.c diff --git a/lib/crypto/tinycrypt/source/ecc.c b/ext/lib/crypto/tinycrypt/source/ecc.c similarity index 100% rename from lib/crypto/tinycrypt/source/ecc.c rename to ext/lib/crypto/tinycrypt/source/ecc.c diff --git a/lib/crypto/tinycrypt/source/ecc_dh.c b/ext/lib/crypto/tinycrypt/source/ecc_dh.c similarity index 100% rename from lib/crypto/tinycrypt/source/ecc_dh.c rename to ext/lib/crypto/tinycrypt/source/ecc_dh.c diff --git a/lib/crypto/tinycrypt/source/ecc_dsa.c b/ext/lib/crypto/tinycrypt/source/ecc_dsa.c similarity index 100% rename from lib/crypto/tinycrypt/source/ecc_dsa.c rename to ext/lib/crypto/tinycrypt/source/ecc_dsa.c diff --git a/lib/crypto/tinycrypt/source/hmac.c b/ext/lib/crypto/tinycrypt/source/hmac.c similarity index 100% rename from lib/crypto/tinycrypt/source/hmac.c rename to ext/lib/crypto/tinycrypt/source/hmac.c diff --git a/lib/crypto/tinycrypt/source/hmac_prng.c b/ext/lib/crypto/tinycrypt/source/hmac_prng.c similarity index 100% rename from lib/crypto/tinycrypt/source/hmac_prng.c rename to ext/lib/crypto/tinycrypt/source/hmac_prng.c diff --git a/lib/crypto/tinycrypt/source/sha256.c b/ext/lib/crypto/tinycrypt/source/sha256.c similarity index 100% rename from lib/crypto/tinycrypt/source/sha256.c rename to ext/lib/crypto/tinycrypt/source/sha256.c diff --git a/lib/crypto/tinycrypt/source/utils.c b/ext/lib/crypto/tinycrypt/source/utils.c similarity index 100% rename from lib/crypto/tinycrypt/source/utils.c rename to ext/lib/crypto/tinycrypt/source/utils.c diff --git a/lib/Kbuild b/lib/Kbuild index 72457200969..09d3058ef79 100644 --- a/lib/Kbuild +++ b/lib/Kbuild @@ -1,2 +1 @@ obj-y += libc/ -obj-y += crypto/ diff --git a/lib/Makefile b/lib/Makefile index 9ac35613829..49d51b0e941 100644 --- a/lib/Makefile +++ b/lib/Makefile @@ -1,8 +1,3 @@ - -ifdef CONFIG_TINYCRYPT -ZEPHYRINCLUDE += -I$(srctree)/lib/crypto/tinycrypt/include -endif - ifdef CONFIG_MINIMAL_LIBC ZEPHYRINCLUDE += -I$(srctree)/lib/libc/minimal/include endif diff --git a/tests/crypto/test_aes/src/Makefile b/tests/crypto/test_aes/src/Makefile index a3b575d71ef..fc96cb403e1 100644 --- a/tests/crypto/test_aes/src/Makefile +++ b/tests/crypto/test_aes/src/Makefile @@ -1,2 +1,2 @@ -ccflags-y += -I$(srctree)/tests/include -I$(srctree)/lib/crypto/tinycrypt/include +ccflags-y += -I$(srctree)/tests/include obj-y = test_aes.o diff --git a/tests/crypto/test_cbc/src/Makefile b/tests/crypto/test_cbc/src/Makefile index 43457179e96..abb41779c16 100644 --- a/tests/crypto/test_cbc/src/Makefile +++ b/tests/crypto/test_cbc/src/Makefile @@ -1,2 +1,3 @@ -ccflags-y += -I$(srctree)/tests/include -I$(srctree)/lib/crypto/tinycrypt/include +ccflags-y += -I$(srctree)/tests/include + obj-y = test_cbc_mode.o diff --git a/tests/crypto/test_ccm_mode/src/Makefile b/tests/crypto/test_ccm_mode/src/Makefile index 905a7c891be..29ce724db20 100644 --- a/tests/crypto/test_ccm_mode/src/Makefile +++ b/tests/crypto/test_ccm_mode/src/Makefile @@ -1,2 +1,3 @@ -ccflags-y += -I$(srctree)/tests/include -I$(srctree)/lib/crypto/tinycrypt/include +ccflags-y += -I$(srctree)/tests/include + obj-y = test_ccm_mode.o diff --git a/tests/crypto/test_cmac_mode/src/Makefile b/tests/crypto/test_cmac_mode/src/Makefile index 185a49fb9dd..6705fbced79 100644 --- a/tests/crypto/test_cmac_mode/src/Makefile +++ b/tests/crypto/test_cmac_mode/src/Makefile @@ -1,2 +1,3 @@ -ccflags-y += -I$(srctree)/tests/include -I$(srctree)/lib/crypto/tinycrypt/include +ccflags-y += -I$(srctree)/tests/include + obj-y = test_cmac_mode.o diff --git a/tests/crypto/test_ctr/src/Makefile b/tests/crypto/test_ctr/src/Makefile index df74a955d49..cd6d3a646a1 100644 --- a/tests/crypto/test_ctr/src/Makefile +++ b/tests/crypto/test_ctr/src/Makefile @@ -1,2 +1,2 @@ -ccflags-y += -I$(srctree)/tests/include -I$(srctree)/lib/crypto/tinycrypt/include +ccflags-y += -I$(srctree)/tests/include obj-y = test_ctr_mode.o diff --git a/tests/crypto/test_hmac/src/Makefile b/tests/crypto/test_hmac/src/Makefile index 650e860b190..59ae8f839ad 100644 --- a/tests/crypto/test_hmac/src/Makefile +++ b/tests/crypto/test_hmac/src/Makefile @@ -1,2 +1,3 @@ -ccflags-y += -I$(srctree)/tests/include -I$(srctree)/lib/crypto/tinycrypt/include +ccflags-y += -I$(srctree)/tests/include + obj-y = test_hmac.o diff --git a/tests/crypto/test_prng/src/Makefile b/tests/crypto/test_prng/src/Makefile index 58fe4c6a46a..eccaf9d132c 100644 --- a/tests/crypto/test_prng/src/Makefile +++ b/tests/crypto/test_prng/src/Makefile @@ -1,3 +1,4 @@ -ccflags-y += -I$(srctree)/tests/include -I$(srctree)/lib/crypto/tinycrypt/include +ccflags-y += -I$(srctree)/tests/include + obj-y = test_hmac_prng.o diff --git a/tests/crypto/test_sha256/src/Makefile b/tests/crypto/test_sha256/src/Makefile index d6b94b0d68c..7947d9913c0 100644 --- a/tests/crypto/test_sha256/src/Makefile +++ b/tests/crypto/test_sha256/src/Makefile @@ -1,3 +1,4 @@ -ccflags-y += -I$(srctree)/tests/include -I$(srctree)/lib/crypto/tinycrypt/include +ccflags-y += -I$(srctree)/tests/include + obj-y = test_sha256.o