From 12d21fa0a7362fefd84313815e6af7ec32415b26 Mon Sep 17 00:00:00 2001 From: Fledge68 Date: Mon, 6 Sep 2021 14:16:45 -0500 Subject: [PATCH] - now compiled with devkitppc r39-2 (GCC 11) and libogc 2.3.1-1 - updated libwolfssl - many thanks to blackb0x --- .github/workflows/main.yml | 20 +- Makefile.main | 3 +- out/bins/app_booter.bin | Bin 1284 -> 1284 bytes out/bins/ext_booter.bin | Bin 225952 -> 227104 bytes out/bins/ext_loader.bin | Bin 3352 -> 3352 bytes out/boot.dol | Bin 4542336 -> 4524160 bytes resources/app_booter/Makefile | 3 +- resources/extldr/Makefile | 3 +- resources/wiiflow_game_booter/Makefile | 3 +- .../source/ChannelHandler.cpp | 2 - resources/wiiflow_game_booter/source/main.cpp | 1 - source/channel/banner.h | 2 - source/channel/channels.h | 3 +- source/channel/nand.hpp | 3 +- source/cheats/gct.cpp | 32 +- source/cheats/gct.h | 2 +- source/config/config.cpp | 152 +- source/config/config.hpp | 2 +- source/defines.h | 2 +- source/devicemounter/PartitionHandle.h | 6 +- source/gui/FreeTypeGX.cpp | 14 +- source/gui/GameTDB.cpp | 14 +- source/gui/GameTDB.hpp | 14 +- source/gui/WiiMovie.hpp | 2 - source/gui/coverflow.hpp | 20 +- source/gui/cursor.cpp | 14 +- source/gui/fanart.cpp | 10 +- source/gui/fanart.hpp | 2 +- source/gui/gcvid.cpp | 2 - source/gui/gcvid.h | 3 +- source/gui/gui.cpp | 4 +- source/gui/text.cpp | 16 +- source/gui/text.hpp | 17 +- source/gui/texture.cpp | 6 +- source/gui/video.hpp | 4 +- source/homebrew/homebrew.cpp | 4 +- source/libwolfssl/callbacks.h | 2 +- source/libwolfssl/certs_test.h | 3253 +++++++++-------- source/libwolfssl/crl.h | 6 +- source/libwolfssl/error-ssl.h | 8 +- source/libwolfssl/internal.h | 568 ++- source/libwolfssl/libwolfssl.a | Bin 424450 -> 439038 bytes source/libwolfssl/ocsp.h | 29 +- source/libwolfssl/openssl/aes.h | 35 +- source/libwolfssl/openssl/asn1.h | 27 +- source/libwolfssl/openssl/asn1t.h | 6 +- source/libwolfssl/openssl/bio.h | 15 +- source/libwolfssl/openssl/bn.h | 12 +- source/libwolfssl/openssl/buffer.h | 12 +- source/libwolfssl/openssl/conf.h | 81 +- source/libwolfssl/openssl/crypto.h | 66 +- source/libwolfssl/openssl/des.h | 4 +- source/libwolfssl/openssl/dh.h | 15 +- source/libwolfssl/openssl/dsa.h | 34 +- source/libwolfssl/openssl/ec.h | 32 +- source/libwolfssl/openssl/ec25519.h | 2 +- source/libwolfssl/openssl/ec448.h | 2 +- source/libwolfssl/openssl/ecdh.h | 6 +- source/libwolfssl/openssl/ecdsa.h | 6 +- source/libwolfssl/openssl/ed25519.h | 2 +- source/libwolfssl/openssl/ed448.h | 2 +- source/libwolfssl/openssl/engine.h | 6 +- source/libwolfssl/openssl/err.h | 4 +- source/libwolfssl/openssl/evp.h | 152 +- source/libwolfssl/openssl/hmac.h | 31 +- source/libwolfssl/openssl/lhash.h | 62 + source/libwolfssl/openssl/md4.h | 4 +- source/libwolfssl/openssl/md5.h | 9 +- source/libwolfssl/openssl/obj_mac.h | 4 +- source/libwolfssl/openssl/objects.h | 8 +- source/libwolfssl/openssl/ocsp.h | 12 +- source/libwolfssl/openssl/opensslv.h | 15 +- source/libwolfssl/openssl/ossl_typ.h | 4 +- source/libwolfssl/openssl/pem.h | 15 +- source/libwolfssl/openssl/pkcs12.h | 7 +- source/libwolfssl/openssl/pkcs7.h | 22 +- source/libwolfssl/openssl/rand.h | 8 +- source/libwolfssl/openssl/rc4.h | 6 +- source/libwolfssl/openssl/ripemd.h | 4 +- source/libwolfssl/openssl/rsa.h | 54 +- source/libwolfssl/openssl/sha.h | 45 +- source/libwolfssl/openssl/sha3.h | 6 +- source/libwolfssl/openssl/ssl.h | 277 +- source/libwolfssl/openssl/stack.h | 5 +- source/libwolfssl/openssl/tls1.h | 2 +- source/libwolfssl/openssl/x509.h | 30 +- source/libwolfssl/openssl/x509_vfy.h | 4 +- source/libwolfssl/openssl/x509v3.h | 25 +- source/libwolfssl/sniffer.h | 35 +- source/libwolfssl/sniffer_error.h | 11 +- source/libwolfssl/ssl.h | 842 ++++- source/libwolfssl/version.h | 6 +- source/libwolfssl/wolfcrypt/aes.h | 86 +- source/libwolfssl/wolfcrypt/arc4.h | 6 +- source/libwolfssl/wolfcrypt/asn.h | 274 +- source/libwolfssl/wolfcrypt/asn_public.h | 66 +- source/libwolfssl/wolfcrypt/blake2-impl.h | 6 +- source/libwolfssl/wolfcrypt/blake2-int.h | 8 +- source/libwolfssl/wolfcrypt/blake2.h | 6 +- source/libwolfssl/wolfcrypt/camellia.h | 4 +- source/libwolfssl/wolfcrypt/chacha.h | 16 +- .../libwolfssl/wolfcrypt/chacha20_poly1305.h | 33 +- source/libwolfssl/wolfcrypt/cmac.h | 24 +- source/libwolfssl/wolfcrypt/coding.h | 6 +- source/libwolfssl/wolfcrypt/compress.h | 6 +- source/libwolfssl/wolfcrypt/cpuid.h | 11 +- source/libwolfssl/wolfcrypt/cryptocb.h | 154 +- source/libwolfssl/wolfcrypt/curve25519.h | 15 +- source/libwolfssl/wolfcrypt/curve448.h | 10 +- source/libwolfssl/wolfcrypt/des3.h | 8 +- source/libwolfssl/wolfcrypt/dh.h | 25 +- source/libwolfssl/wolfcrypt/dsa.h | 18 +- source/libwolfssl/wolfcrypt/ecc.h | 157 +- source/libwolfssl/wolfcrypt/ed25519.h | 57 +- source/libwolfssl/wolfcrypt/ed448.h | 57 +- source/libwolfssl/wolfcrypt/error-crypt.h | 10 +- source/libwolfssl/wolfcrypt/fe_448.h | 55 +- source/libwolfssl/wolfcrypt/fe_operations.h | 24 +- source/libwolfssl/wolfcrypt/fips_test.h | 4 +- source/libwolfssl/wolfcrypt/ge_448.h | 10 +- source/libwolfssl/wolfcrypt/ge_operations.h | 14 +- source/libwolfssl/wolfcrypt/hash.h | 43 +- source/libwolfssl/wolfcrypt/hc128.h | 4 +- source/libwolfssl/wolfcrypt/hmac.h | 17 +- source/libwolfssl/wolfcrypt/idea.h | 4 +- source/libwolfssl/wolfcrypt/integer.h | 20 +- source/libwolfssl/wolfcrypt/logging.h | 14 +- source/libwolfssl/wolfcrypt/md2.h | 4 +- source/libwolfssl/wolfcrypt/md4.h | 4 +- source/libwolfssl/wolfcrypt/md5.h | 20 +- source/libwolfssl/wolfcrypt/mem_track.h | 30 +- source/libwolfssl/wolfcrypt/memory.h | 2 +- source/libwolfssl/wolfcrypt/misc.h | 18 +- source/libwolfssl/wolfcrypt/mpi_class.h | 2 +- source/libwolfssl/wolfcrypt/mpi_superclass.h | 2 +- source/libwolfssl/wolfcrypt/pkcs11.h | 2 +- source/libwolfssl/wolfcrypt/pkcs12.h | 6 +- source/libwolfssl/wolfcrypt/pkcs7.h | 28 +- source/libwolfssl/wolfcrypt/poly1305.h | 17 +- .../wolfcrypt/port/Espressif/esp32-crypt.h | 4 +- .../port/Renesas/renesas-tsip-crypt.h | 4 +- .../wolfcrypt/port/af_alg/afalg_hash.h | 4 +- .../wolfcrypt/port/af_alg/wc_afalg.h | 4 +- .../wolfcrypt/port/arm/cryptoCell.h | 4 +- .../libwolfssl/wolfcrypt/port/atmel/atmel.h | 14 +- .../wolfcrypt/port/caam/caam_driver.h | 298 +- .../libwolfssl/wolfcrypt/port/caam/wolfcaam.h | 111 +- .../wolfcrypt/port/caam/wolfcaam_sha.h | 6 +- .../port/cavium/cavium_octeon_sync.h | 6 +- .../wolfcrypt/port/cypress/psoc6_crypto.h | 34 +- .../wolfcrypt/port/devcrypto/wc_devcrypto.h | 4 +- .../wolfcrypt/port/intel/quickassist_sync.h | 6 +- source/libwolfssl/wolfcrypt/port/nrf51.h | 4 +- .../libwolfssl/wolfcrypt/port/nxp/dcp_port.h | 45 +- .../libwolfssl/wolfcrypt/port/nxp/ksdk_port.h | 17 +- .../wolfcrypt/port/pic32/pic32mz-crypt.h | 4 +- source/libwolfssl/wolfcrypt/port/st/stm32.h | 6 +- source/libwolfssl/wolfcrypt/port/st/stsafe.h | 12 +- source/libwolfssl/wolfcrypt/port/ti/ti-ccm.h | 4 +- source/libwolfssl/wolfcrypt/port/ti/ti-hash.h | 4 +- .../wolfcrypt/port/xilinx/xil-sha3.h | 2 +- source/libwolfssl/wolfcrypt/pwdbased.h | 4 +- source/libwolfssl/wolfcrypt/rabbit.h | 4 +- source/libwolfssl/wolfcrypt/random.h | 9 +- source/libwolfssl/wolfcrypt/ripemd.h | 4 +- source/libwolfssl/wolfcrypt/rsa.h | 49 +- source/libwolfssl/wolfcrypt/selftest.h | 4 +- source/libwolfssl/wolfcrypt/settings.h | 303 +- source/libwolfssl/wolfcrypt/sha.h | 34 +- source/libwolfssl/wolfcrypt/sha256.h | 39 +- source/libwolfssl/wolfcrypt/sha3.h | 14 +- source/libwolfssl/wolfcrypt/sha512.h | 40 +- source/libwolfssl/wolfcrypt/signature.h | 8 +- source/libwolfssl/wolfcrypt/sp.h | 184 +- source/libwolfssl/wolfcrypt/sp_int.h | 1065 +++++- source/libwolfssl/wolfcrypt/srp.h | 14 +- source/libwolfssl/wolfcrypt/tfm.h | 46 +- source/libwolfssl/wolfcrypt/types.h | 179 +- source/libwolfssl/wolfcrypt/visibility.h | 8 +- source/libwolfssl/wolfcrypt/wc_encrypt.h | 28 +- source/libwolfssl/wolfcrypt/wc_pkcs11.h | 9 +- source/libwolfssl/wolfcrypt/wc_port.h | 240 +- source/libwolfssl/wolfcrypt/wolfevent.h | 4 +- source/libwolfssl/wolfcrypt/wolfmath.h | 18 +- source/libwolfssl/wolfio.h | 73 +- source/list/ListGenerator.hpp | 6 +- source/list/cache.hpp | 3 +- source/loader/gc_disc_dump.cpp | 2 - source/menu/menu.hpp | 11 +- source/menu/menu_cftheme.cpp | 2 - source/menu/menu_config7.cpp | 2 - source/menu/menu_config_adv.cpp | 2 - source/menu/menu_paths.cpp | 2 - source/menu/menu_source.cpp | 4 +- source/music/MusicPlayer.cpp | 6 +- source/music/MusicPlayer.hpp | 2 - source/music/gui_sound.cpp | 2 - source/plugin/plugin.hpp | 5 +- source/wstringEx/wstringEx.cpp | 18 +- source/wstringEx/wstringEx.hpp | 13 +- 200 files changed, 7382 insertions(+), 3407 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 26e46d3a..064322e0 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -21,22 +21,22 @@ jobs: # general-tools is needed for bin2s and gamecube-tools is needed for elf2dol run: | mkdir cache && cd cache - wget "https://wii.leseratte10.de/devkitPro/file.php/devkitPPC-r36-1-linux.pkg.tar.xz" - wget "https://wii.leseratte10.de/devkitPro/file.php/devkitppc-rules-1.0.1-1-any.pkg.tar.xz" - wget "https://wii.leseratte10.de/devkitPro/file.php/libogc-1.8.24-1-any.pkg.tar.xz" - wget "https://wii.leseratte10.de/devkitPro/file.php/general-tools-1.2.0-1-linux.pkg.tar.xz" - wget "https://wii.leseratte10.de/devkitPro/file.php/gamecube-tools-1.0.2-1-linux.pkg.tar.xz" + wget "https://wii.leseratte10.de/devkitPro/file.php/devkitPPC-r39-2-linux_x86_64.pkg.tar.xz" + wget "https://wii.leseratte10.de/devkitPro/file.php/devkitppc-rules-1.1.1-1-any.pkg.tar.xz" + wget "https://wii.leseratte10.de/devkitPro/file.php/libogc-2.3.1-1-any.pkg.tar.xz" + wget "https://wii.leseratte10.de/devkitPro/file.php/general-tools-1.2.0-2-linux_x86_64.pkg.tar.xz" + wget "https://wii.leseratte10.de/devkitPro/file.php/gamecube-tools-1.0.3-1-linux_x86_64.pkg.tar.xz" cd .. - name: Extract devkitPPC r36, libogc 1.8.24, bin2s and elf2dol # general-tools is needed for bin2s and gamecube-tools is needed for elf2dol run: | - tar -xf cache/devkitPPC-r36-1-linux.pkg.tar.xz opt/devkitpro/devkitPPC --strip-components=1 - tar -xf cache/devkitppc-rules-1.0.1-1-any.pkg.tar.xz opt/devkitpro/devkitPPC --strip-components=1 - tar -xf cache/libogc-1.8.24-1-any.pkg.tar.xz opt/devkitpro/libogc --strip-components=1 - tar -xf cache/general-tools-1.2.0-1-linux.pkg.tar.xz opt/devkitpro/tools/bin/bin2s --strip-components=4 + tar -xf cache/devkitPPC-r39-2-linux_x86_64.pkg.tar.xz opt/devkitpro/devkitPPC --strip-components=1 + tar -xf cache/devkitppc-rules-1.1.1-1-any.pkg.tar.xz opt/devkitpro/devkitPPC --strip-components=1 + tar -xf cache/libogc-2.3.1-1-any.pkg.tar.xz opt/devkitpro/libogc --strip-components=1 + tar -xf cache/general-tools-1.2.0-2-linux_x86_64.pkg.tar.xz opt/devkitpro/tools/bin/bin2s --strip-components=4 sudo cp bin2s /usr/local/bin/bin2s - tar -xf cache/gamecube-tools-1.0.2-1-linux.pkg.tar.xz opt/devkitpro/tools/bin/elf2dol --strip-components=4 + tar -xf cache/gamecube-tools-1.0.3-1-linux_x86_64.pkg.tar.xz opt/devkitpro/tools/bin/elf2dol --strip-components=4 sudo cp elf2dol /usr/local/bin/elf2dol - name: Compile diff --git a/Makefile.main b/Makefile.main index 6a337785..00a1ea6a 100644 --- a/Makefile.main +++ b/Makefile.main @@ -45,6 +45,7 @@ DATA := data \ data/help \ data/sounds INCLUDES := source +FALSE_POSITIVES := -Wno-array-bounds -Wno-stringop-overflow -Wno-stringop-overread #--------------------------------------------------------------------------------- # Default build shell script options @@ -53,7 +54,7 @@ ios := 249 #--------------------------------------------------------------------------------- # options for code generation #--------------------------------------------------------------------------------- -CFLAGS = -g -ggdb -O2 -Wall -Wno-multichar -Wno-address-of-packed-member -Wextra $(MACHDEP) $(INCLUDE) -D_GNU_SOURCE -DHAVE_CONFIG_H +CFLAGS = -g -ggdb -O2 -Wall -Wno-multichar -Wno-address-of-packed-member -Wextra $(FALSE_POSITIVES) $(MACHDEP) $(INCLUDE) -D_GNU_SOURCE -DHAVE_CONFIG_H CXXFLAGS = $(CFLAGS) LDFLAGS = -g -ggdb $(MACHDEP) -Wl,-Map,$(notdir $@).map,--section-start,.init=0x80620000,-wrap,malloc,-wrap,free,-wrap,memalign,-wrap,calloc,-wrap,realloc,-wrap,malloc_usable_size,-wrap,wiiuse_register diff --git a/out/bins/app_booter.bin b/out/bins/app_booter.bin index fece52c0fb66a1f16d3c4438a03ea32bc050ae10..3269cc1df8b61a8ff34d8510b4f67d83df034559 100644 GIT binary patch delta 349 zcmYj~u}i~X5XJA34=E)>hYAq~<79?98KFWDy9MeH1-A+v92`10sstLef@9+6pdg5g zC^!f@I0!1}<{#kDMO-U%*YsDj<09JI2?*nmSbr4i+D}78!c_)t(BvNGBj3WX2Tq!7kwD(hL|YuzTbX(htg= cZiz@0t+((+{C|WW;bABw1gw*UYD delta 359 zcmYL^u}i~16vp2rQQA_WL&S(nhk_j*nB4p@XBV&_6=yTyPXj^88K&AAJ12`{mt1(n?zC@66Lo5zQIx_`V`Xgf5BXiuPpZ zmK2Gyd302SGTUVyn-8jPPpK3QDUjN%chVB|rr+my;VjY={Pl%v>|y`OoVwC9T{UR6 zYdBx(d+O^RDfGp`NLsh??~1qQED(@I8Pdlh9?2g}!)e!vsD_ZZ*e9=>h?T0a$0iam zXI*pTttKtBFBoY*VeE}V=DZHt*s<;eE(GmuJ6ni`i_OH{Tz*0Oguze!j^%{8Xqdo@ d&8xSx7BVxE9fL7=10H}Q5H7z1hu}Ln{sET=iX#93 diff --git a/out/bins/ext_booter.bin b/out/bins/ext_booter.bin index 530bee449f49b23c9f61f30d4d453c7c9e567dfb..fb9510f21bdc75a59d36c9c47501bf6c744ac951 100644 GIT binary patch delta 99778 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 z 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%0AqnIV@kLkphz`PJ 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%0D!;;WD>KkFbqi)6d#SIw3ab6Jl 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\a#{ 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

%B3onu}^o+72=St7l+ItH)cKRZNn(F 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

e&RdW)S6=eR{W6%cWyFnPztNmFv2X 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 z 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 delta 1684379 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�Lok7 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

V3N0^Sb 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 z%0D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 c0rG0}4L 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 z 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

4lvCLBrFv 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 WRKhkD*rbQ}tk-}Ohu`Z7-TxneF-1ZE diff --git a/resources/app_booter/Makefile b/resources/app_booter/Makefile index 17deab9a..ed159033 100644 --- a/resources/app_booter/Makefile +++ b/resources/app_booter/Makefile @@ -35,8 +35,9 @@ INCLUDES := #--------------------------------------------------------------------------------- # options for code generation #--------------------------------------------------------------------------------- +FALSE_POSITIVES := -Wno-array-bounds -Wno-stringop-overflow -Wno-stringop-overread MACHDEP := -mno-eabi -mno-sdata -mcpu=750 -CFLAGS := -Wall -W -O1 -ffreestanding -std=gnu99 -Wstrict-aliasing=2 $(MACHDEP) $(INCLUDE) +CFLAGS := -Wall -W -O1 -ffreestanding -std=gnu99 -Wstrict-aliasing=2 $(FALSE_POSITIVES) $(MACHDEP) $(INCLUDE) LDFLAGS := -nostartfiles -nostdlib $(MACHDEP) #--------------------------------------------------------------------------------- diff --git a/resources/extldr/Makefile b/resources/extldr/Makefile index a15fe15c..8000a1d2 100644 --- a/resources/extldr/Makefile +++ b/resources/extldr/Makefile @@ -10,8 +10,9 @@ OBJCOPY = $(PREFIX)objcopy RANLIB = $(PREFIX)ranlib STRIP = $(PREFIX)strip +FALSE_POSITIVES := -Wno-array-bounds -Wno-stringop-overflow -Wno-stringop-overread MACHDEP = -mcpu=750 -mno-eabi -CFLAGS = $(MACHDEP) -O1 -Werror -Wall -pipe -mno-sdata +CFLAGS = $(FALSE_POSITIVES) $(MACHDEP) -O1 -Werror -Wall -pipe -mno-sdata LDFLAGS = $(MACHDEP) -n -nostartfiles -nostdlib -Wl,-T,link.ld -L. ASFLAGS = -D_LANGUAGE_ASSEMBLY -DHW_RVL -x assembler-with-cpp diff --git a/resources/wiiflow_game_booter/Makefile b/resources/wiiflow_game_booter/Makefile index 1fc4e20f..96a07c4c 100644 --- a/resources/wiiflow_game_booter/Makefile +++ b/resources/wiiflow_game_booter/Makefile @@ -23,7 +23,8 @@ INCLUDES := source #--------------------------------------------------------------------------------- # options for code generation #--------------------------------------------------------------------------------- -CFLAGS = -g -ggdb -O1 -Wall -Wextra -Wno-shift-negative-value $(MACHDEP) $(INCLUDE) -DHAVE_CONFIG_H +FALSE_POSITIVES := -Wno-array-bounds -Wno-stringop-overflow -Wno-stringop-overread +CFLAGS = -g -ggdb -O1 -Wall -Wextra -Wno-shift-negative-value $(FALSE_POSITIVES) $(MACHDEP) $(INCLUDE) -DHAVE_CONFIG_H CXXFLAGS = $(CFLAGS) LDFLAGS = -g -ggdb $(MACHDEP) -Wl,-Map,$(notdir $@).map,--section-start,.init=0x80A80000 diff --git a/resources/wiiflow_game_booter/source/ChannelHandler.cpp b/resources/wiiflow_game_booter/source/ChannelHandler.cpp index ef28e1ce..ef1cdf5e 100644 --- a/resources/wiiflow_game_booter/source/ChannelHandler.cpp +++ b/resources/wiiflow_game_booter/source/ChannelHandler.cpp @@ -42,8 +42,6 @@ #include "videopatch.h" #include "video_tinyload.h" -using namespace std; - void *dolchunkoffset[18]; u32 dolchunksize[18]; u32 dolchunkcount; diff --git a/resources/wiiflow_game_booter/source/main.cpp b/resources/wiiflow_game_booter/source/main.cpp index 2f79ce49..4964b2d2 100644 --- a/resources/wiiflow_game_booter/source/main.cpp +++ b/resources/wiiflow_game_booter/source/main.cpp @@ -34,7 +34,6 @@ #include "gecko.h" #define EXT_ADDR_CFG ((vu32*)0x90100000) -using namespace std; IOS_Info CurrentIOS; /* Boot Variables */ diff --git a/source/channel/banner.h b/source/channel/banner.h index 955bedae..d7afb8f0 100644 --- a/source/channel/banner.h +++ b/source/channel/banner.h @@ -31,8 +31,6 @@ #include -using namespace std; - #define IMET_MAX_NAME_LEN 0x2a typedef struct diff --git a/source/channel/channels.h b/source/channel/channels.h index 86b45644..6b4eaa50 100644 --- a/source/channel/channels.h +++ b/source/channel/channels.h @@ -35,7 +35,8 @@ #define IMET_MAX_NAME_LEN 0x2a -using namespace std; +using std::string; +using std::vector; typedef struct { diff --git a/source/channel/nand.hpp b/source/channel/nand.hpp index e31d5cdb..de346f41 100644 --- a/source/channel/nand.hpp +++ b/source/channel/nand.hpp @@ -59,7 +59,8 @@ typedef struct _uid u16 uid; } ATTRIBUTE_PACKED uid; -using namespace std; +using std::string; +using std::min; class Nand { diff --git a/source/cheats/gct.cpp b/source/cheats/gct.cpp index 563af484..62bc1a15 100644 --- a/source/cheats/gct.cpp +++ b/source/cheats/gct.cpp @@ -56,7 +56,7 @@ string GCTCheats::getCheatComment(unsigned int nr) //creates gct from internal array int GCTCheats::createGCT(const char * filename) { - ofstream filestr; + std::ofstream filestr; filestr.open(filename); if (filestr.fail()) return 0; @@ -93,33 +93,33 @@ int GCTCheats::createTXT(const char * filename) { // save gct file - fstream file; - file.open(filename,ios::out); + std::fstream file; + file.open(filename, std::ios::out); - file << sGameID << endl; - file << sGameTitle << endl << endl; + file << sGameID << std::endl; + file << sGameTitle << std::endl << std::endl; for (unsigned int i=0; i < iCntCheats; ++i) if (sCheatSelected[i]) { - file << sCheatName[i] << endl; + file << sCheatName[i] << std::endl; for (unsigned int j=0; j+8 < sCheats[i].size(); j+=16) - file << sCheats[i].substr(j,8) << " " << sCheats[i].substr(j+8,8) << endl; + file << sCheats[i].substr(j,8) << " " << sCheats[i].substr(j+8,8) << std::endl; - file << "#selected#" << sCheatComment[i] << endl; - file << endl; + file << "#selected#" << sCheatComment[i] << std::endl; + file << std::endl; } for (unsigned int i=0; i < iCntCheats; ++i) if (!sCheatSelected[i]) { - file << sCheatName[i] << endl; + file << sCheatName[i] << std::endl; for (unsigned int j=0; j+8 < sCheats[i].size(); j+=16) - file << sCheats[i].substr(j,8) << " " << sCheats[i].substr(j+8,8) << endl; + file << sCheats[i].substr(j,8) << " " << sCheats[i].substr(j+8,8) << std::endl; if (sCheatComment[i].size() > 1) - file << sCheatComment[i] << endl; - file << endl; + file << sCheatComment[i] << std::endl; + file << std::endl; } file.close(); @@ -131,17 +131,17 @@ int GCTCheats::openTxtfile(const char * filename) { Reset(); - ifstream filestr; + std::ifstream filestr; filestr.open(filename); if (filestr.fail()) return 0; int i = 0; string str; - filestr.seekg(0,ios_base::end); + filestr.seekg(0, std::ios_base::end); int size = filestr.tellg(); if (size <= 0) return -1; - filestr.seekg(0,ios_base::beg); + filestr.seekg(0, std::ios_base::beg); getline(filestr,sGameID); if (sGameID[sGameID.length() - 1] == '\r') diff --git a/source/cheats/gct.h b/source/cheats/gct.h index e882b8e5..47e997cf 100644 --- a/source/cheats/gct.h +++ b/source/cheats/gct.h @@ -11,7 +11,7 @@ #define MAXCHEATS 100 -using namespace std; +using std::string; //!Handles Ocarina TXT Cheatfiles class GCTCheats { diff --git a/source/config/config.cpp b/source/config/config.cpp index 4fb1b567..46b2a57a 100644 --- a/source/config/config.cpp +++ b/source/config/config.cpp @@ -9,25 +9,25 @@ static const char *g_whitespaces = " \f\n\r\t\v"; static const int g_floatPrecision = 10; -const string Config::emptyString; +const std::string Config::emptyString; Config::Config(void) : m_loaded(false), m_changed(false), m_domains(), m_filename(), m_iter() { } -static string trimEnd(string line) +static std::string trimEnd(std::string line) { - string::size_type i = line.find_last_not_of(g_whitespaces); - if (i == string::npos) line.clear(); + std::string::size_type i = line.find_last_not_of(g_whitespaces); + if (i == std::string::npos) line.clear(); else line.resize(i + 1); return line; } -static string trim(string line) +static std::string trim(std::string line) { - string::size_type i = line.find_last_not_of(g_whitespaces); - if (i == string::npos) + std::string::size_type i = line.find_last_not_of(g_whitespaces); + if (i == std::string::npos) { line.clear(); return line; @@ -40,13 +40,13 @@ static string trim(string line) return line; } -static string unescNewlines(const string &text) +static std::string unescNewlines(const std::string &text) { - string s; + std::string s; bool escaping = false; s.reserve(text.size()); - for (string::size_type i = 0; i < text.size(); ++i) + for (std::string::size_type i = 0; i < text.size(); ++i) { if (escaping) { @@ -68,12 +68,12 @@ static string unescNewlines(const string &text) return s; } -static string escNewlines(const string &text) +static std::string escNewlines(const std::string &text) { - string s; + std::string s; s.reserve(text.size()); - for (string::size_type i = 0; i < text.size(); ++i) + for (std::string::size_type i = 0; i < text.size(); ++i) { switch (text[i]) { @@ -92,17 +92,17 @@ static string escNewlines(const string &text) return s; } -bool Config::hasDomain(const string &domain) const +bool Config::hasDomain(const std::string &domain) const { return m_domains.find(domain) != m_domains.end(); } -void Config::copyDomain(const string &dst, const string &src) +void Config::copyDomain(const std::string &dst, const std::string &src) { m_domains[upperCase(dst)] = m_domains[upperCase(src)]; } -const string &Config::firstDomain(void) +const std::string &Config::firstDomain(void) { m_iter = m_domains.begin(); if (m_iter == m_domains.end()) @@ -110,7 +110,7 @@ const string &Config::firstDomain(void) return m_iter->first; } -const string &Config::nextDomain(void) +const std::string &Config::nextDomain(void) { ++m_iter; if (m_iter == m_domains.end()) @@ -118,7 +118,7 @@ const string &Config::nextDomain(void) return m_iter->first; } -const string &Config::nextDomain(const string &start) const +const std::string &Config::nextDomain(const std::string &start) const { Config::DomainMap::const_iterator i; Config::DomainMap::const_iterator j; @@ -132,7 +132,7 @@ const string &Config::nextDomain(const string &start) const return j != m_domains.end() ? j->first : i->first; } -const string &Config::prevDomain(const string &start) const +const std::string &Config::prevDomain(const std::string &start) const { Config::DomainMap::const_iterator i; if (m_domains.empty()) @@ -148,9 +148,9 @@ bool Config::load(const char *filename) { if (m_loaded && m_changed) save(); - ifstream file(filename, ios::in | ios::binary); - string line; - string domain(""); + std::ifstream file(filename, std::ios::in | std::ios::binary); + std::string line; + std::string domain(""); m_changed = false; m_loaded = false; @@ -161,7 +161,7 @@ bool Config::load(const char *filename) while (file.good()) { line.clear(); - getline(file, line, '\n'); + std::getline(file, line, '\n'); ++n; if (!file.bad() && !file.fail()) { @@ -169,8 +169,8 @@ bool Config::load(const char *filename) if (line.empty() || line[0] == '#' || line[0] == '\0') continue; if (line[0] == '[') { - string::size_type i = line.find_first_of(']'); - if (i != string::npos && i > 1) + std::string::size_type i = line.find_first_of(']'); + if (i != std::string::npos && i > 1) { domain = upperCase(line.substr(1, i - 1)); if (m_domains.find(domain) != m_domains.end()) @@ -180,8 +180,8 @@ bool Config::load(const char *filename) else if (!domain.empty()) { - string::size_type i = line.find_first_of('='); - if (i != string::npos && i > 0) + std::string::size_type i = line.find_first_of('='); + if (i != std::string::npos && i > 0) m_domains[domain][lowerCase(trim(line.substr(0, i)))] = unescNewlines(trim(line.substr(i + 1))); } } @@ -205,7 +205,7 @@ void Config::save(bool unload) if (m_changed) { //gprintf("changed:%d\n",m_changed); - ofstream file(m_filename.c_str(), ios::out | ios::binary); + std::ofstream file(m_filename.c_str(), std::ios::out | std::ios::binary); for (Config::DomainMap::iterator k = m_domains.begin(); k != m_domains.end(); ++k) { Config::KeyMap *m = &k->second; @@ -231,15 +231,15 @@ void Config::groupCustomTitles(void) { for (Config::DomainMap::iterator k = m_domains.begin(); k != m_domains.end(); ++k) { - string uc_domain(upperCase(k->first)); - istringstream f(uc_domain); - string s; + std::string uc_domain(upperCase(k->first)); + std::istringstream f(uc_domain); + std::string s; while (getline(f, s, ',')) m_groupCustomTitles[s] = uc_domain; } } -void Config::setWString(const string &domain, const string &key, const wstringEx &val) +void Config::setWString(const std::string &domain, const std::string &key, const wstringEx &val) { if (domain.empty() || key.empty()) return; //gprintf("setWString %s\n", val.toUTF8().c_str()); @@ -247,7 +247,7 @@ void Config::setWString(const string &domain, const string &key, const wstringEx m_domains[upperCase(domain)][lowerCase(key)] = val.toUTF8(); } -void Config::setString(const string &domain, const string &key, const string &val) +void Config::setString(const std::string &domain, const std::string &key, const std::string &val) { if (domain.empty() || key.empty()) return; //gprintf("setString %s\n", val.c_str()); @@ -255,7 +255,7 @@ void Config::setString(const string &domain, const string &key, const string &va m_domains[upperCase(domain)][lowerCase(key)] = val; } -void Config::setBool(const string &domain, const string &key, bool val) +void Config::setBool(const std::string &domain, const std::string &key, bool val) { if (domain.empty() || key.empty()) return; //gprintf("setBool %d\n", val); @@ -263,7 +263,7 @@ void Config::setBool(const string &domain, const string &key, bool val) m_domains[upperCase(domain)][lowerCase(key)] = val ? "yes" : "no"; } -void Config::remove(const string &domain, const string &key) +void Config::remove(const std::string &domain, const std::string &key) { if (domain.empty() || key.empty()) return; //gprintf("remove %s\n", key.c_str()); @@ -271,7 +271,7 @@ void Config::remove(const string &domain, const string &key) m_domains[upperCase(domain)].erase(lowerCase(key)); } -void Config::setOptBool(const string &domain, const string &key, int val) +void Config::setOptBool(const std::string &domain, const std::string &key, int val) { if (domain.empty() || key.empty()) return; //gprintf("setOptBool %d\n", val); @@ -289,7 +289,7 @@ void Config::setOptBool(const string &domain, const string &key, int val) } } -void Config::setInt(const string &domain, const string &key, int val) +void Config::setInt(const std::string &domain, const std::string &key, int val) { if (domain.empty() || key.empty()) return; //gprintf("setInt %i\n", val); @@ -305,7 +305,7 @@ void Config::setUInt(const std::string &domain, const std::string &key, unsigned m_domains[upperCase(domain)][lowerCase(key)] = sfmt("%u", val); } -void Config::setFloat(const string &domain, const string &key, float val) +void Config::setFloat(const std::string &domain, const std::string &key, float val) { if (domain.empty() || key.empty()) return; //gprintf("setFloat %f\n", val); @@ -329,10 +329,10 @@ void Config::setColor(const std::string &domain, const std::string &key, const C m_domains[upperCase(domain)][lowerCase(key)] = sfmt("#%.2X%.2X%.2X%.2X", val.r, val.g, val.b, val.a); } -wstringEx Config::getWString(const string &domain, const string &key, const wstringEx &defVal) +wstringEx Config::getWString(const std::string &domain, const std::string &key, const wstringEx &defVal) { if (domain.empty() || key.empty()) return defVal; - string &data = m_domains[upperCase(domain)][lowerCase(key)]; + std::string &data = m_domains[upperCase(domain)][lowerCase(key)]; if (data.empty()) { data = defVal.toUTF8(); @@ -345,11 +345,11 @@ wstringEx Config::getWString(const string &domain, const string &key, const wstr return ws; } -string Config::getString(const string &domain, const string &key, const string &defVal) +std::string Config::getString(const std::string &domain, const std::string &key, const std::string &defVal) { if(domain.empty() || key.empty()) return defVal; - string &data = m_domains[upperCase(domain)][lowerCase(key)]; + std::string &data = m_domains[upperCase(domain)][lowerCase(key)]; if(data.empty()) { data = defVal; @@ -359,13 +359,13 @@ string Config::getString(const string &domain, const string &key, const string & return data; } -string Config::getStringCustomTitles(const string &domain, const string &key, const string &defVal) +std::string Config::getStringCustomTitles(const std::string &domain, const std::string &key, const std::string &defVal) { if(domain.empty() || key.empty()) return defVal; KeyMap::iterator i = m_groupCustomTitles.find(upperCase(domain)); if (i == m_groupCustomTitles.end()) return defVal; - string &data = m_domains[i->second][lowerCase(key)]; + std::string &data = m_domains[i->second][lowerCase(key)]; if(data.empty()) { data = defVal; @@ -375,9 +375,9 @@ string Config::getStringCustomTitles(const string &domain, const string &key, co return data; } -vector Config::getStrings(const string &domain, const string &key, char seperator, const string &defVal) +std::vector Config::getStrings(const std::string &domain, const std::string &key, char seperator, const std::string &defVal) { - vector retval; + std::vector retval; if(domain.empty() || key.empty()) { @@ -386,7 +386,7 @@ vector Config::getStrings(const string &domain, const string &key, char return retval; } - string &data = m_domains[upperCase(domain)][lowerCase(key)]; + std::string &data = m_domains[upperCase(domain)][lowerCase(key)]; if(data.empty()) { if(!defVal.empty()) @@ -396,19 +396,19 @@ vector Config::getStrings(const string &domain, const string &key, char // Parse the string into different substrings // skip delimiters at beginning. - string::size_type lastPos = data.find_first_not_of(seperator, 0); + std::string::size_type lastPos = data.find_first_not_of(seperator, 0); // find first "non-delimiter". - string::size_type pos = data.find_first_of(seperator, lastPos); + std::string::size_type pos = data.find_first_of(seperator, lastPos); // no seperator found, return data - if(pos == string::npos) + if(pos == std::string::npos) { retval.push_back(data); return retval; } - while(string::npos != pos || string::npos != lastPos) + while(std::string::npos != pos || std::string::npos != lastPos) { // found a token, add it to the vector. retval.push_back(data.substr(lastPos, pos - lastPos)); @@ -423,10 +423,10 @@ vector Config::getStrings(const string &domain, const string &key, char return retval; } -bool Config::getBool(const string &domain, const string &key, bool defVal) +bool Config::getBool(const std::string &domain, const std::string &key, bool defVal) { if (domain.empty() || key.empty()) return defVal; - string &data = m_domains[upperCase(domain)][lowerCase(key)]; + std::string &data = m_domains[upperCase(domain)][lowerCase(key)]; if (data.empty()) { data = defVal ? "yes" : "no"; @@ -434,19 +434,19 @@ bool Config::getBool(const string &domain, const string &key, bool defVal) m_changed = true; return defVal; } - string s(lowerCase(trim(data))); + std::string s(lowerCase(trim(data))); if (s == "yes" || s == "true" || s == "y" || s == "1") return true; return false; } -bool Config::testOptBool(const string &domain, const string &key, bool defVal) +bool Config::testOptBool(const std::string &domain, const std::string &key, bool defVal) { if (domain.empty() || key.empty()) return defVal; KeyMap &km = m_domains[upperCase(domain)]; KeyMap::iterator i = km.find(lowerCase(key)); if (i == km.end()) return defVal; - string s(lowerCase(trim(i->second))); + std::string s(lowerCase(trim(i->second))); if (s == "yes" || s == "true" || s == "y" || s == "1") return true; if (s == "no" || s == "false" || s == "n" || s == "0") @@ -454,10 +454,10 @@ bool Config::testOptBool(const string &domain, const string &key, bool defVal) return defVal; } -int Config::getOptBool(const string &domain, const string &key, int defVal) +int Config::getOptBool(const std::string &domain, const std::string &key, int defVal) { if (domain.empty() || key.empty()) return defVal; - string &data = m_domains[upperCase(domain)][lowerCase(key)]; + std::string &data = m_domains[upperCase(domain)][lowerCase(key)]; if (data.empty()) { switch (defVal) @@ -475,7 +475,7 @@ int Config::getOptBool(const string &domain, const string &key, int defVal) m_changed = true; return defVal; } - string s(lowerCase(trim(data))); + std::string s(lowerCase(trim(data))); if (s == "yes" || s == "true" || s == "y" || s == "1") return 1; if (s == "no" || s == "false" || s == "n" || s == "0") @@ -483,10 +483,10 @@ int Config::getOptBool(const string &domain, const string &key, int defVal) return 2; } -int Config::getInt(const string &domain, const string &key, int defVal) +int Config::getInt(const std::string &domain, const std::string &key, int defVal) { if (domain.empty() || key.empty()) return defVal; - string &data = m_domains[upperCase(domain)][lowerCase(key)]; + std::string &data = m_domains[upperCase(domain)][lowerCase(key)]; if (data.empty()) { data = sfmt("%i", defVal); @@ -501,16 +501,16 @@ int Config::getInt(const string &domain, const string &key, int defVal) bool Config::getInt(const std::string &domain, const std::string &key, int *value) { if (domain.empty() || key.empty()) return false; - string &data = m_domains[upperCase(domain)][lowerCase(key)]; + std::string &data = m_domains[upperCase(domain)][lowerCase(key)]; if (data.empty()) return false; *value = strtol(data.c_str(), 0, 10); return true; } -unsigned int Config::getUInt(const string &domain, const string &key, unsigned int defVal) +unsigned int Config::getUInt(const std::string &domain, const std::string &key, unsigned int defVal) { if (domain.empty() || key.empty()) return defVal; - string &data = m_domains[upperCase(domain)][lowerCase(key)]; + std::string &data = m_domains[upperCase(domain)][lowerCase(key)]; if (data.empty()) { data = sfmt("%u", defVal); @@ -521,10 +521,10 @@ unsigned int Config::getUInt(const string &domain, const string &key, unsigned i return strtoul(data.c_str(), 0, 10); } -float Config::getFloat(const string &domain, const string &key, float defVal) +float Config::getFloat(const std::string &domain, const std::string &key, float defVal) { if (domain.empty() || key.empty()) return defVal; - string &data = m_domains[upperCase(domain)][lowerCase(key)]; + std::string &data = m_domains[upperCase(domain)][lowerCase(key)]; if (data.empty()) { data = sfmt("%.*g", g_floatPrecision, defVal); @@ -538,12 +538,12 @@ float Config::getFloat(const string &domain, const string &key, float defVal) Vector3D Config::getVector3D(const std::string &domain, const std::string &key, const Vector3D &defVal) { if (domain.empty() || key.empty()) return defVal; - string &data = m_domains[upperCase(domain)][lowerCase(key)]; - string::size_type i; - string::size_type j = string::npos; + std::string &data = m_domains[upperCase(domain)][lowerCase(key)]; + std::string::size_type i; + std::string::size_type j = std::string::npos; i = data.find_first_of(','); - if (i != string::npos) j = data.find_first_of(',', i + 1); - if (j == string::npos) + if (i != std::string::npos) j = data.find_first_of(',', i + 1); + if (j == std::string::npos) { data = sfmt("%.*g, %.*g, %.*g", g_floatPrecision, defVal.x, g_floatPrecision, defVal.y, g_floatPrecision, defVal.z); //gprintf("getVector3D\n"); @@ -556,16 +556,16 @@ Vector3D Config::getVector3D(const std::string &domain, const std::string &key, CColor Config::getColor(const std::string &domain, const std::string &key, const CColor &defVal) { if (domain.empty() || key.empty()) return defVal; - string &data = m_domains[upperCase(domain)][lowerCase(key)]; - string text(upperCase(trim(data))); + std::string &data = m_domains[upperCase(domain)][lowerCase(key)]; + std::string text(upperCase(trim(data))); u32 i = (u32)text.find_first_of('#'); - if (i != string::npos) + if (i != std::string::npos) { text.erase(0, i + 1); i = (u32)text.find_first_not_of("0123456789ABCDEF"); - if ((i != string::npos && i >= 6) || (i == string::npos && text.size() >= 6)) + if ((i != std::string::npos && i >= 6) || (i == std::string::npos && text.size() >= 6)) { - u32 n = ((i != string::npos && i >= 8) || (i == string::npos && text.size() >= 8)) ? 8 : 6; + u32 n = ((i != std::string::npos && i >= 8) || (i == std::string::npos && text.size() >= 8)) ? 8 : 6; for (i = 0; i < n; ++i) if (text[i] <= '9') text[i] -= '0'; diff --git a/source/config/config.hpp b/source/config/config.hpp index 3ecb6654..dd7cf872 100644 --- a/source/config/config.hpp +++ b/source/config/config.hpp @@ -34,7 +34,7 @@ public: wstringEx getWString(const std::string &domain, const std::string &key, const wstringEx &defVal = wstringEx()); std::string getString(const std::string &domain, const std::string &key, const std::string &defVal = std::string()); std::string getStringCustomTitles(const std::string &domain, const std::string &key, const std::string &defVal = std::string()); - vector getStrings(const std::string &domain, const std::string &key, char seperator = ',', const std::string &defval = std::string()); + std::vector getStrings(const std::string &domain, const std::string &key, char seperator = ',', const std::string &defval = std::string()); bool getBool(const std::string &domain, const std::string &key, bool defVal = false); int getOptBool(const std::string &domain, const std::string &key, int defVal = 2); bool testOptBool(const std::string &domain, const std::string &key, bool defVal); diff --git a/source/defines.h b/source/defines.h index 7a99e077..37925364 100644 --- a/source/defines.h +++ b/source/defines.h @@ -1,6 +1,6 @@ #define APP_NAME "WiiFlow WFL" -#define APP_VERSION "5.5.0 beta 1" +#define APP_VERSION "5.5.0 beta 2" #define APP_DATA_DIR "wiiflow" #define APPS_DIR "apps/wiiflow" diff --git a/source/devicemounter/PartitionHandle.h b/source/devicemounter/PartitionHandle.h index 536ef402..bce47be5 100644 --- a/source/devicemounter/PartitionHandle.h +++ b/source/devicemounter/PartitionHandle.h @@ -29,8 +29,6 @@ #include #include -using namespace std; - #define MAX_PARTITIONS 32 /* Maximum number of partitions that can be found */ #define MAX_MOUNTS 10 /* Maximum number of mounts available at one time */ #define MAX_SYMLINK_DEPTH 10 /* Maximum search depth when resolving symbolic links */ @@ -171,8 +169,8 @@ protected: s8 CheckGPT(); const DISC_INTERFACE *interface; - vector PartitionList; - vector MountNameList; + std::vector PartitionList; + std::vector MountNameList; }; #endif diff --git a/source/gui/FreeTypeGX.cpp b/source/gui/FreeTypeGX.cpp index af380d71..b5ff4d51 100644 --- a/source/gui/FreeTypeGX.cpp +++ b/source/gui/FreeTypeGX.cpp @@ -21,8 +21,6 @@ #include "FreeTypeGX.h" #include "memory/mem2.hpp" -using namespace std; - #define ALIGN8(x) (((x) + 7) & ~7) FreeTypeGX::FreeTypeGX() @@ -88,8 +86,8 @@ void FreeTypeGX::unloadFont() { if (this->fontData.size() == 0) return; - map >::iterator itr; - map::iterator itr2; + std::map >::iterator itr; + std::map::iterator itr2; for (itr = fontData.begin(); itr != fontData.end(); itr++) { @@ -105,10 +103,10 @@ void FreeTypeGX::unloadFont() ftgxCharData * FreeTypeGX::cacheGlyphData(wchar_t charCode, int16_t pixelSize) { - map >::iterator itr = fontData.find(pixelSize); + std::map >::iterator itr = fontData.find(pixelSize); if (itr != fontData.end()) { - map::iterator itr2 = itr->second.find(charCode); + std::map::iterator itr2 = itr->second.find(charCode); if (itr2 != itr->second.end()) { return &itr2->second; @@ -124,7 +122,7 @@ ftgxCharData * FreeTypeGX::cacheGlyphData(wchar_t charCode, int16_t pixelSize) FT_Set_Pixel_Sizes(ftFace, 0, ftPointSize); //!Cache ascender and decender as well - map::iterator itrAlign = ftgxAlign.find(ftPointSize); + std::map::iterator itrAlign = ftgxAlign.find(ftPointSize); if (itrAlign == ftgxAlign.end()) { ftgxAlign[ftPointSize].ascender = (int16_t) ftFace->size->metrics.ascender >> 6; @@ -231,7 +229,7 @@ int16_t FreeTypeGX::getStyleOffsetWidth(uint16_t width, uint16_t format) int16_t FreeTypeGX::getStyleOffsetHeight(int16_t format, uint16_t pixelSize) { - map::iterator itrAlign = ftgxAlign.find(pixelSize); + std::map::iterator itrAlign = ftgxAlign.find(pixelSize); if (itrAlign == ftgxAlign.end()) return 0; switch (format & FTGX_ALIGN_MASK) diff --git a/source/gui/GameTDB.cpp b/source/gui/GameTDB.cpp index 8e226180..ed9cda61 100644 --- a/source/gui/GameTDB.cpp +++ b/source/gui/GameTDB.cpp @@ -80,8 +80,8 @@ bool GameTDB::OpenFile(const char *filepath) if(file) { int pos; - string OffsetsPath = filepath; - if((pos = OffsetsPath.find_last_of('/')) != (int) string::npos) + std::string OffsetsPath = filepath; + if((pos = OffsetsPath.find_last_of('/')) != (int) std::string::npos) OffsetsPath[pos] = '\0'; else OffsetsPath.clear(); //! Relative path @@ -96,7 +96,7 @@ bool GameTDB::OpenFile(const char *filepath) void GameTDB::CloseFile() { OffsetMap.clear(); - vector().swap(OffsetMap); + std::vector().swap(OffsetMap); if(GameNodeCache) MEM2_free(GameNodeCache); @@ -112,7 +112,7 @@ bool GameTDB::LoadGameOffsets(const char *path) if(!path) return false; - string OffsetDBPath = path; + std::string OffsetDBPath = path; if(strlen(path) > 0 && path[strlen(path)-1] != '/') OffsetDBPath += '/'; OffsetDBPath += NAME_OFFSET_DB; @@ -777,7 +777,7 @@ bool GameTDB::GetRatingValue(const char *id, const char * &rating_value) return true; } -int GameTDB::GetRatingDescriptors(const char *id, vector & desc_list) +int GameTDB::GetRatingDescriptors(const char *id, std::vector & desc_list) { desc_list.clear(); if(!id) @@ -845,7 +845,7 @@ int GameTDB::GetWifiPlayers(const char *id) return players; } -int GameTDB::GetWifiFeatures(const char *id, vector & feat_list) +int GameTDB::GetWifiFeatures(const char *id, std::vector & feat_list) { feat_list.clear(); if(!id) @@ -917,7 +917,7 @@ int GameTDB::GetPlayers(const char *id) return players; } -int GameTDB::GetAccessories(const char *id, vector & acc_list) +int GameTDB::GetAccessories(const char *id, std::vector & acc_list) { acc_list.clear(); if(!id) diff --git a/source/gui/GameTDB.hpp b/source/gui/GameTDB.hpp index 92bccc2a..a9b818a4 100644 --- a/source/gui/GameTDB.hpp +++ b/source/gui/GameTDB.hpp @@ -28,7 +28,7 @@ #include #include -using namespace std; +//using namespace std; enum { @@ -40,7 +40,7 @@ enum typedef struct _Accessory { - string Name; + std::string Name; bool Required; } Accessory; @@ -95,19 +95,19 @@ public: bool GetRatingValue(const char * id, const char * &rating_value); //! Get the rating descriptor list inside a vector for a specific game id //! Returns the amount of descriptors found or -1 if failed - int GetRatingDescriptors(const char * id, vector & desc_list); + int GetRatingDescriptors(const char * id, std::vector & desc_list); //! Get the wifi player count for a specific game id //! Returns the amount of wifi players or -1 if failed int GetWifiPlayers(const char * id); //! Get the wifi feature list inside a vector for a specific game id //! Returns the amount of wifi features found or -1 if failed - int GetWifiFeatures(const char * id, vector & feat_list); + int GetWifiFeatures(const char * id, std::vector & feat_list); //! Get the player count for a specific game id //! Returns the amount of players or -1 if failed int GetPlayers(const char * id); //! Returns the amount of accessoires found or -1 if failed //! Get the accessoire (inputs) list inside a vector for a specific game id - int GetAccessories(const char * id, vector & acc_list); + int GetAccessories(const char * id, std::vector & acc_list); //! Get the box (case) color for a specific game id //! Returns the color in RGB (first 3 bytes) u32 GetCaseColor(const char * id); @@ -132,9 +132,9 @@ private: inline char * GetNodeText(char *data, const char *nodestart, const char *nodeend); bool isLoaded; - vector OffsetMap; + std::vector OffsetMap; FILE * file; - string LangCode; + std::string LangCode; char *GameNodeCache; char GameIDCache[7]; }; diff --git a/source/gui/WiiMovie.hpp b/source/gui/WiiMovie.hpp index 89f18ac8..b5f9f39e 100644 --- a/source/gui/WiiMovie.hpp +++ b/source/gui/WiiMovie.hpp @@ -5,8 +5,6 @@ #include "Timer.h" #include "texture.hpp" -using namespace std; - class WiiMovie { public: diff --git a/source/gui/coverflow.hpp b/source/gui/coverflow.hpp index ec1cb5dd..56bc4e11 100644 --- a/source/gui/coverflow.hpp +++ b/source/gui/coverflow.hpp @@ -16,7 +16,9 @@ #include "loader/utils.h" #include "music/gui_sound.h" -using namespace std; +//using namespace std; +using std::min; +using std::max; enum Sorting { @@ -47,7 +49,7 @@ public: bool empty(void) const { return m_items.empty(); } u32 size(void) const { return m_items.size(); } // - bool start(const string &m_imgsDir); + bool start(const std::string &m_imgsDir); void stopCoverLoader(bool empty = false); void startCoverLoader(void); u32 _currentPos(void) const; @@ -86,7 +88,7 @@ public: void setCompression(bool enable) { m_compressTextures = enable; } bool getBoxMode(void) const { return m_box;} void setBufferSize(u32 numCovers); - void setTextures(const string &loadingPic, const string &loadingPicFlat, const string &noCoverPic, const string &noCoverPicFlat); + void setTextures(const std::string &loadingPic, const std::string &loadingPicFlat, const std::string &noCoverPic, const std::string &noCoverPicFlat); void setFont(const SFont &font, const CColor &color); void setRange(u32 rows, u32 columns); void setBoxMode(bool box); @@ -237,7 +239,7 @@ private: Vector3D m_cameraAim; Vector3D m_targetCameraPos; Vector3D m_targetCameraAim; - vector m_items; + std::vector m_items; CCover *m_covers; int m_delay; int m_minDelay; @@ -264,10 +266,10 @@ private: TexData m_dvdSkin_GreenTwo; TexData m_dvdSkin_Clear; // Settings - string m_pngLoadCover; - string m_pngLoadCoverFlat; - string m_pngNoCover; - string m_pngNoCoverFlat; + std::string m_pngLoadCover; + std::string m_pngLoadCoverFlat; + std::string m_pngNoCover; + std::string m_pngNoCoverFlat; u32 m_numBufCovers; SFont m_font; CColor m_fontColor; @@ -285,7 +287,7 @@ private: bool m_hideCover; bool m_compressTextures; bool m_compressCache; - string m_cachePath; + std::string m_cachePath; bool m_deletePicsAfterCaching; bool m_pluginCacheFolders; bool m_mirrorBlur; diff --git a/source/gui/cursor.cpp b/source/gui/cursor.cpp index 1812bb3a..8eb4bee1 100644 --- a/source/gui/cursor.cpp +++ b/source/gui/cursor.cpp @@ -4,7 +4,7 @@ #include "memory/mem2.hpp" #include -using namespace std; +//using namespace std; extern const u8 player1_point_png[]; extern const u8 player2_point_png[]; @@ -172,13 +172,13 @@ void CCursor::_blur(void) return; for (int i = 0; i < w; ++i) { - xmax[i] = min(i + radius + 1, w - 1); - xmin[i] = max(i - radius, 0); + xmax[i] = std::min(i + radius + 1, w - 1); + xmin[i] = std::max(i - radius, 0); } for (int i = 0; i < h; ++i) { - ymax[i] = min(i + radius + 1, h - 1) * w; - ymin[i] = max(i - radius, 0) * w; + ymax[i] = std::min(i + radius + 1, h - 1) * w; + ymin[i] = std::max(i - radius, 0) * w; } for (int k = 0; k < pass; ++k) // 2 passes for much better quality { @@ -187,7 +187,7 @@ void CCursor::_blur(void) { sum = 0; for (int i = -radius; i <= radius; ++i) - sum += pic[coordsI8(min(max(0, i), w - 1), y, w)]; + sum += pic[coordsI8(std::min(std::max(0, i), w - 1), y, w)]; for (int x = 0; x < w; ++x) { r[yi] = sum / div; @@ -202,7 +202,7 @@ void CCursor::_blur(void) yp = -radius * w; for (int i = -radius; i <= radius; ++i) { - yi = max(0, yp) + x; + yi = std::max(0, yp) + x; sum += r[yi]; yp += w; } diff --git a/source/gui/fanart.cpp b/source/gui/fanart.cpp index b50231ff..896173c7 100644 --- a/source/gui/fanart.cpp +++ b/source/gui/fanart.cpp @@ -3,7 +3,7 @@ #include "memory/mem2.hpp" #include "types.h" -using namespace std; +//using namespace std; static guVector _GRRaxisx = (guVector){1, 0, 0}; // DO NOT MODIFY!!! static guVector _GRRaxisy = (guVector){0, 1, 0}; // Even at runtime @@ -22,7 +22,7 @@ void CFanart::unload() { m_faConfig.unload(); m_loaded = false; - for(vector::iterator Elm = m_elms.begin(); Elm != m_elms.end(); Elm++) + for(std::vector::iterator Elm = m_elms.begin(); Elm != m_elms.end(); Elm++) Elm->Cleanup(); m_elms.clear(); TexHandle.Cleanup(m_bg); @@ -105,7 +105,7 @@ void CFanart::getBackground(const TexData * &hq, const TexData * &lq) void CFanart::reset() { - for(vector::iterator Elm = m_elms.begin(); Elm != m_elms.end(); Elm++) + for(std::vector::iterator Elm = m_elms.begin(); Elm != m_elms.end(); Elm++) Elm->Cleanup(); m_elms.clear(); for(int i = 1; i <= 6; i++) @@ -186,7 +186,7 @@ CFanartElement::CFanartElement(Config &cfg, const char *dir, int artwork) m_y = cfg.getInt(domain, "y", 0); m_scaleX = cfg.getFloat(domain, "scale_x", 1.f); m_scaleY = cfg.getFloat(domain, "scale_y", 1.f); - m_alpha = min(cfg.getInt(domain, "alpha", 255), 255); + m_alpha = std::min(cfg.getInt(domain, "alpha", 255), 255); m_delay = (int) (cfg.getFloat(domain, "delay", 0.f) * 50); m_angle = cfg.getFloat(domain, "angle", 0.f); @@ -195,7 +195,7 @@ CFanartElement::CFanartElement(Config &cfg, const char *dir, int artwork) m_event_y = m_event_duration == 0 ? m_y : cfg.getInt(domain, "event_y", m_y); m_event_scaleX = m_event_duration == 0 ? m_scaleX : cfg.getInt(domain, "event_scale_x", m_scaleX); m_event_scaleY = m_event_duration == 0 ? m_scaleY : cfg.getInt(domain, "event_scale_y", m_scaleY); - m_event_alpha = m_event_duration == 0 ? m_alpha : min(cfg.getInt(domain, "event_alpha", m_alpha), 255); // Not from m_alpha, because the animation can start less translucent than m_alpha + m_event_alpha = m_event_duration == 0 ? m_alpha : std::min(cfg.getInt(domain, "event_alpha", m_alpha), 255); // Not from m_alpha, because the animation can start less translucent than m_alpha m_event_angle = m_event_duration == 0 ? m_angle : cfg.getFloat(domain, "event_angle", m_angle); m_step_x = m_event_duration == 0 ? 0 : (m_x - m_event_x) / m_event_duration; diff --git a/source/gui/fanart.hpp b/source/gui/fanart.hpp index cbadd6d2..9949f30d 100644 --- a/source/gui/fanart.hpp +++ b/source/gui/fanart.hpp @@ -70,7 +70,7 @@ public: void reset(); private: - vector m_elms; + std::vector m_elms; bool m_animationComplete; u16 m_delayAfterAnimation; diff --git a/source/gui/gcvid.cpp b/source/gui/gcvid.cpp index eb91902f..10aeb500 100644 --- a/source/gui/gcvid.cpp +++ b/source/gui/gcvid.cpp @@ -36,8 +36,6 @@ #include "loader/utils.h" #include "memory/mem2.hpp" -using namespace std; - void readThpHeader(FILE* f, ThpHeader& h) { fread(&h, sizeof(h), 1, f); diff --git a/source/gui/gcvid.h b/source/gui/gcvid.h index b11b12e6..2081a1ce 100644 --- a/source/gui/gcvid.h +++ b/source/gui/gcvid.h @@ -32,7 +32,8 @@ #include //FILE* #include #include -using namespace std; +using std::string; +using std::vector; #include diff --git a/source/gui/gui.cpp b/source/gui/gui.cpp index bb683c71..3c8967ac 100644 --- a/source/gui/gui.cpp +++ b/source/gui/gui.cpp @@ -1,8 +1,6 @@ #include "gui.hpp" #include -using namespace std; - template static inline T loopNum(T i, T s) { return (i + s) % s; @@ -444,7 +442,7 @@ void CButtonsMgr::stopSounds(void) void CButtonsMgr::setSoundVolume(int vol) { - m_soundVolume = min(max(0, vol), 0xFF); + m_soundVolume = std::min(std::max(0, vol), 0xFF); } void CButtonsMgr::setRumble(int chan, bool wii, bool gc, bool wupc) diff --git a/source/gui/text.cpp b/source/gui/text.cpp index 976f62c1..369410f9 100644 --- a/source/gui/text.cpp +++ b/source/gui/text.cpp @@ -168,9 +168,9 @@ bool SFont::fromBuffer(const u8 *buffer, const u32 bufferSize, u32 size, u32 lsp { if(buffer == NULL) return false; - fSize = min(max(6u, size), 1000u); - lineSpacing = min(max(6u, lspacing), 1000u); - weight = min(w, 32u); + fSize = std::min(std::max(6u, size), 1000u); + lineSpacing = std::min(std::max(6u, lspacing), 1000u); + weight = std::min(w, 32u); index = idx;// currently not used if(data != NULL) @@ -190,11 +190,11 @@ bool SFont::fromBuffer(const u8 *buffer, const u32 bufferSize, u32 size, u32 lsp bool SFont::fromFile(const char *path, u32 size, u32 lspacing, u32 w, u32 idx, const char *fontname) { - fSize = min(max(6u, size), 1000u); - weight = min(w, 32u); + fSize = std::min(std::max(6u, size), 1000u); + weight = std::min(w, 32u); index = idx;// currently not used - lineSpacing = min(max(6u, lspacing), 1000u); + lineSpacing = std::min(std::max(6u, lspacing), 1000u); if(data != NULL) free(data); @@ -425,14 +425,14 @@ string lowerCase(string text) // trim from start string ltrim(string s) { - s.erase(s.begin(), find_if(s.begin(), s.end(), not1(ptr_fun(isspace)))); + s.erase(s.begin(), find_if(s.begin(), s.end(), std::not1(std::ptr_fun(isspace)))); return s; } // trim from end string rtrim(string s) { - s.erase(find_if(s.rbegin(), s.rend(), not1(ptr_fun(isspace))).base(), s.end()); + s.erase(find_if(s.rbegin(), s.rend(), std::not1(std::ptr_fun(isspace))).base(), s.end()); return s; } diff --git a/source/gui/text.hpp b/source/gui/text.hpp index 5decd9d2..b86e040f 100644 --- a/source/gui/text.hpp +++ b/source/gui/text.hpp @@ -10,7 +10,8 @@ #include "video.hpp" #include "wstringEx/wstringEx.hpp" -using namespace std; +using std::string; +using std::vector; class SFont// should be either struct SFont or class CFont { @@ -59,17 +60,17 @@ private: // Nothing to do with CText. Q&D helpers for string formating. -std::string sfmt(const char *format, ...); +string sfmt(const char *format, ...); wstringEx wfmt(const wstringEx &format, ...); bool checkFmt(const wstringEx &ref, const wstringEx &format); -std::string vectorToString(const vector &vect, std::string sep); +string vectorToString(const vector &vect, string sep); wstringEx vectorToString(const vector &vect, char sep); vector stringToVector(const wstringEx &text, char sep); -vector stringToVector(const std::string &text, char sep); -std::string upperCase(std::string text); -std::string lowerCase(std::string text); -std::string ltrim(std::string s); -std::string rtrim(std::string s); +vector stringToVector(const string &text, char sep); +string upperCase(string text); +string lowerCase(string text); +string ltrim(string s); +string rtrim(string s); bool wchar_cmp(const wchar_t *first, const wchar_t *second, u32 first_len, u32 second_len); bool char_cmp(const char *first, const char *second, u32 first_len, u32 second_len); diff --git a/source/gui/texture.cpp b/source/gui/texture.cpp index 41d4e6b1..12b18363 100644 --- a/source/gui/texture.cpp +++ b/source/gui/texture.cpp @@ -12,8 +12,6 @@ #include "pngu.h" #include "gcvid.h" -using namespace std; - STexture TexHandle; static u32 upperPower(u32 width) @@ -657,11 +655,11 @@ void STexture::_calcMipMaps(u8 &maxLOD, u8 &minLOD, u32 &lod0Width, u32 &lod0Hei if (height - (lod0Height >> 1) < lod0Height >> 3 && minSize <= lod0Height >> 1) lod0Height >>= 1; maxLOD = 0; - for (u32 i = min(lod0Width, lod0Height); i > minSize; i >>= 1) + for (u32 i = std::min(lod0Width, lod0Height); i > minSize; i >>= 1) ++maxLOD; minLOD = 0; if (maxSize > 8) - for (u32 i = max(lod0Width, lod0Height); i > maxSize; i >>= 1) + for (u32 i = std::max(lod0Width, lod0Height); i > maxSize; i >>= 1) ++minLOD; if (minLOD > maxLOD) maxLOD = minLOD; diff --git a/source/gui/video.hpp b/source/gui/video.hpp index 1791a5a9..532a5646 100644 --- a/source/gui/video.hpp +++ b/source/gui/video.hpp @@ -4,10 +4,12 @@ #include #include +#include #include "vector.hpp" #include "texture.hpp" -using namespace std; +using std::string; +using std::vector; class CTexCoord { diff --git a/source/homebrew/homebrew.cpp b/source/homebrew/homebrew.cpp index 2c45a192..d28a9f08 100644 --- a/source/homebrew/homebrew.cpp +++ b/source/homebrew/homebrew.cpp @@ -26,7 +26,9 @@ u32 homebrew_size = 0; u8 *appbooter_ptr = NULL; u32 appbooter_size = 0; -using namespace std; + +using std::string; +using std::vector; extern const u8 wfstub_bin[]; extern const u32 wfstub_bin_size; diff --git a/source/libwolfssl/callbacks.h b/source/libwolfssl/callbacks.h index fe7a077a..d904f735 100644 --- a/source/libwolfssl/callbacks.h +++ b/source/libwolfssl/callbacks.h @@ -1,6 +1,6 @@ /* callbacks.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * diff --git a/source/libwolfssl/certs_test.h b/source/libwolfssl/certs_test.h index d201a40f..ad7a6105 100644 --- a/source/libwolfssl/certs_test.h +++ b/source/libwolfssl/certs_test.h @@ -98,112 +98,110 @@ static const int sizeof_client_keypub_der_1024 = sizeof(client_keypub_der_1024); /* ./certs/1024/client-cert.der, 1024-bit */ static const unsigned char client_cert_der_1024[] = { - 0x30, 0x82, 0x04, 0x18, 0x30, 0x82, 0x03, 0x81, 0xA0, 0x03, - 0x02, 0x01, 0x02, 0x02, 0x14, 0x77, 0x1A, 0x0F, 0xB4, 0xD6, - 0x66, 0x91, 0xF9, 0xEB, 0xD6, 0x69, 0xE9, 0x5E, 0x55, 0x74, - 0xF3, 0x4B, 0xD7, 0x74, 0x8A, 0x30, 0x0D, 0x06, 0x09, 0x2A, - 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, 0x00, - 0x30, 0x81, 0x9E, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, - 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, - 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, - 0x74, 0x61, 0x6E, 0x61, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, - 0x55, 0x04, 0x07, 0x0C, 0x07, 0x42, 0x6F, 0x7A, 0x65, 0x6D, - 0x61, 0x6E, 0x31, 0x15, 0x30, 0x13, 0x06, 0x03, 0x55, 0x04, - 0x0A, 0x0C, 0x0C, 0x77, 0x6F, 0x6C, 0x66, 0x53, 0x53, 0x4C, - 0x5F, 0x31, 0x30, 0x32, 0x34, 0x31, 0x19, 0x30, 0x17, 0x06, - 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x10, 0x50, 0x72, 0x6F, 0x67, - 0x72, 0x61, 0x6D, 0x6D, 0x69, 0x6E, 0x67, 0x2D, 0x31, 0x30, - 0x32, 0x34, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, - 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, - 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, - 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, - 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, - 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, - 0x6D, 0x30, 0x1E, 0x17, 0x0D, 0x32, 0x30, 0x30, 0x36, 0x31, - 0x39, 0x31, 0x33, 0x32, 0x33, 0x34, 0x31, 0x5A, 0x17, 0x0D, - 0x32, 0x33, 0x30, 0x33, 0x31, 0x36, 0x31, 0x33, 0x32, 0x33, - 0x34, 0x31, 0x5A, 0x30, 0x81, 0x9E, 0x31, 0x0B, 0x30, 0x09, - 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, - 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, - 0x4D, 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, 0x31, 0x10, 0x30, - 0x0E, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, 0x07, 0x42, 0x6F, - 0x7A, 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x15, 0x30, 0x13, 0x06, - 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x0C, 0x77, 0x6F, 0x6C, 0x66, - 0x53, 0x53, 0x4C, 0x5F, 0x31, 0x30, 0x32, 0x34, 0x31, 0x19, - 0x30, 0x17, 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x10, 0x50, - 0x72, 0x6F, 0x67, 0x72, 0x61, 0x6D, 0x6D, 0x69, 0x6E, 0x67, - 0x2D, 0x31, 0x30, 0x32, 0x34, 0x31, 0x18, 0x30, 0x16, 0x06, - 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, - 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, - 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, - 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, - 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, - 0x2E, 0x63, 0x6F, 0x6D, 0x30, 0x81, 0x9F, 0x30, 0x0D, 0x06, - 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x01, - 0x05, 0x00, 0x03, 0x81, 0x8D, 0x00, 0x30, 0x81, 0x89, 0x02, - 0x81, 0x81, 0x00, 0xBC, 0x73, 0x0E, 0xA8, 0x49, 0xF3, 0x74, - 0xA2, 0xA9, 0xEF, 0x18, 0xA5, 0xDA, 0x55, 0x99, 0x21, 0xF9, - 0xC8, 0xEC, 0xB3, 0x6D, 0x48, 0xE5, 0x35, 0x35, 0x75, 0x77, - 0x37, 0xEC, 0xD1, 0x61, 0x90, 0x5F, 0x3E, 0xD9, 0xE4, 0xD5, - 0xDF, 0x94, 0xCA, 0xC1, 0xA9, 0xD7, 0x19, 0xDA, 0x86, 0xC9, - 0xE8, 0x4D, 0xC4, 0x61, 0x36, 0x82, 0xFE, 0xAB, 0xAD, 0x7E, - 0x77, 0x25, 0xBB, 0x8D, 0x11, 0xA5, 0xBC, 0x62, 0x3A, 0xA8, - 0x38, 0xCC, 0x39, 0xA2, 0x04, 0x66, 0xB4, 0xF7, 0xF7, 0xF3, - 0xAA, 0xDA, 0x4D, 0x02, 0x0E, 0xBB, 0x5E, 0x8D, 0x69, 0x48, - 0xDC, 0x77, 0xC9, 0x28, 0x0E, 0x22, 0xE9, 0x6B, 0xA4, 0x26, - 0xBA, 0x4C, 0xE8, 0xC1, 0xFD, 0x4A, 0x6F, 0x2B, 0x1F, 0xEF, - 0x8A, 0xAE, 0xF6, 0x90, 0x62, 0xE5, 0x64, 0x1E, 0xEB, 0x2B, - 0x3C, 0x67, 0xC8, 0xDC, 0x27, 0x00, 0xF6, 0x91, 0x68, 0x65, - 0xA9, 0x02, 0x03, 0x01, 0x00, 0x01, 0xA3, 0x82, 0x01, 0x4F, - 0x30, 0x82, 0x01, 0x4B, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, - 0x0E, 0x04, 0x16, 0x04, 0x14, 0x81, 0x69, 0x0F, 0xF8, 0xDF, - 0xDD, 0xCF, 0x34, 0x29, 0xD5, 0x67, 0x75, 0x71, 0x85, 0xC7, - 0x75, 0x10, 0x69, 0x59, 0xEC, 0x30, 0x81, 0xDE, 0x06, 0x03, - 0x55, 0x1D, 0x23, 0x04, 0x81, 0xD6, 0x30, 0x81, 0xD3, 0x80, - 0x14, 0x81, 0x69, 0x0F, 0xF8, 0xDF, 0xDD, 0xCF, 0x34, 0x29, - 0xD5, 0x67, 0x75, 0x71, 0x85, 0xC7, 0x75, 0x10, 0x69, 0x59, - 0xEC, 0xA1, 0x81, 0xA4, 0xA4, 0x81, 0xA1, 0x30, 0x81, 0x9E, - 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, - 0x02, 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, - 0x04, 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, 0x61, 0x6E, - 0x61, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x07, - 0x0C, 0x07, 0x42, 0x6F, 0x7A, 0x65, 0x6D, 0x61, 0x6E, 0x31, - 0x15, 0x30, 0x13, 0x06, 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x0C, - 0x77, 0x6F, 0x6C, 0x66, 0x53, 0x53, 0x4C, 0x5F, 0x31, 0x30, - 0x32, 0x34, 0x31, 0x19, 0x30, 0x17, 0x06, 0x03, 0x55, 0x04, - 0x0B, 0x0C, 0x10, 0x50, 0x72, 0x6F, 0x67, 0x72, 0x61, 0x6D, - 0x6D, 0x69, 0x6E, 0x67, 0x2D, 0x31, 0x30, 0x32, 0x34, 0x31, - 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, - 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, - 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, - 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, - 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, - 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x14, - 0x77, 0x1A, 0x0F, 0xB4, 0xD6, 0x66, 0x91, 0xF9, 0xEB, 0xD6, - 0x69, 0xE9, 0x5E, 0x55, 0x74, 0xF3, 0x4B, 0xD7, 0x74, 0x8A, - 0x30, 0x0C, 0x06, 0x03, 0x55, 0x1D, 0x13, 0x04, 0x05, 0x30, - 0x03, 0x01, 0x01, 0xFF, 0x30, 0x1C, 0x06, 0x03, 0x55, 0x1D, - 0x11, 0x04, 0x15, 0x30, 0x13, 0x82, 0x0B, 0x65, 0x78, 0x61, - 0x6D, 0x70, 0x6C, 0x65, 0x2E, 0x63, 0x6F, 0x6D, 0x87, 0x04, - 0x7F, 0x00, 0x00, 0x01, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, - 0x25, 0x04, 0x16, 0x30, 0x14, 0x06, 0x08, 0x2B, 0x06, 0x01, - 0x05, 0x05, 0x07, 0x03, 0x01, 0x06, 0x08, 0x2B, 0x06, 0x01, - 0x05, 0x05, 0x07, 0x03, 0x02, 0x30, 0x0D, 0x06, 0x09, 0x2A, - 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, 0x00, - 0x03, 0x81, 0x81, 0x00, 0xA8, 0x13, 0x2C, 0xFC, 0x43, 0xE9, - 0xDB, 0x59, 0xC7, 0x7E, 0x32, 0x8B, 0x32, 0xBA, 0xA3, 0x5C, - 0x2F, 0x60, 0xAB, 0xA1, 0xEF, 0x9A, 0x64, 0x36, 0x4E, 0xCE, - 0x05, 0x6D, 0xBC, 0x63, 0xB0, 0x8F, 0x91, 0xF7, 0x76, 0xBB, - 0x92, 0xB4, 0xB6, 0x78, 0xDB, 0x2E, 0x7F, 0x7F, 0x9C, 0xE7, - 0x58, 0x4B, 0x73, 0x89, 0x0F, 0xD1, 0x13, 0x61, 0xA4, 0x2A, - 0x2F, 0x6E, 0xC7, 0xB1, 0x19, 0xBB, 0x14, 0x00, 0xD7, 0x0E, - 0xDD, 0x7E, 0x2F, 0x66, 0xE7, 0x5F, 0xF9, 0x0F, 0x39, 0x90, - 0xF6, 0x6B, 0xD3, 0x84, 0x1E, 0xD0, 0x09, 0x23, 0x22, 0x27, - 0xF5, 0xC9, 0x96, 0xED, 0x45, 0xD7, 0x78, 0x3C, 0xEB, 0xA7, - 0xD5, 0x8A, 0xF5, 0xF4, 0xDD, 0x99, 0x27, 0xD2, 0x4C, 0x86, - 0x6E, 0x63, 0x7D, 0xA8, 0x93, 0x62, 0x71, 0xC1, 0xCB, 0x93, - 0xF4, 0x81, 0x3E, 0x95, 0xB3, 0xA8, 0xE5, 0xA6, 0x23, 0x51, - 0x4A, 0xB5 + 0x30, 0x82, 0x04, 0x02, 0x30, 0x82, 0x03, 0x6B, 0xA0, 0x03, + 0x02, 0x01, 0x02, 0x02, 0x09, 0x00, 0xC5, 0x19, 0x90, 0xA1, + 0xC9, 0x01, 0x0F, 0xB9, 0x30, 0x0D, 0x06, 0x09, 0x2A, 0x86, + 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, 0x00, 0x30, + 0x81, 0x9E, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, + 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, + 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, + 0x61, 0x6E, 0x61, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, + 0x04, 0x07, 0x0C, 0x07, 0x42, 0x6F, 0x7A, 0x65, 0x6D, 0x61, + 0x6E, 0x31, 0x15, 0x30, 0x13, 0x06, 0x03, 0x55, 0x04, 0x0A, + 0x0C, 0x0C, 0x77, 0x6F, 0x6C, 0x66, 0x53, 0x53, 0x4C, 0x5F, + 0x31, 0x30, 0x32, 0x34, 0x31, 0x19, 0x30, 0x17, 0x06, 0x03, + 0x55, 0x04, 0x0B, 0x0C, 0x10, 0x50, 0x72, 0x6F, 0x67, 0x72, + 0x61, 0x6D, 0x6D, 0x69, 0x6E, 0x67, 0x2D, 0x31, 0x30, 0x32, + 0x34, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, + 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, + 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, + 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, + 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, + 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, + 0x30, 0x1E, 0x17, 0x0D, 0x32, 0x31, 0x30, 0x32, 0x31, 0x30, + 0x31, 0x39, 0x34, 0x39, 0x35, 0x32, 0x5A, 0x17, 0x0D, 0x32, + 0x33, 0x31, 0x31, 0x30, 0x37, 0x31, 0x39, 0x34, 0x39, 0x35, + 0x32, 0x5A, 0x30, 0x81, 0x9E, 0x31, 0x0B, 0x30, 0x09, 0x06, + 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, + 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, + 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, 0x31, 0x10, 0x30, 0x0E, + 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, 0x07, 0x42, 0x6F, 0x7A, + 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x15, 0x30, 0x13, 0x06, 0x03, + 0x55, 0x04, 0x0A, 0x0C, 0x0C, 0x77, 0x6F, 0x6C, 0x66, 0x53, + 0x53, 0x4C, 0x5F, 0x31, 0x30, 0x32, 0x34, 0x31, 0x19, 0x30, + 0x17, 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x10, 0x50, 0x72, + 0x6F, 0x67, 0x72, 0x61, 0x6D, 0x6D, 0x69, 0x6E, 0x67, 0x2D, + 0x31, 0x30, 0x32, 0x34, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, + 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, + 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, + 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, + 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, + 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, + 0x63, 0x6F, 0x6D, 0x30, 0x81, 0x9F, 0x30, 0x0D, 0x06, 0x09, + 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x01, 0x05, + 0x00, 0x03, 0x81, 0x8D, 0x00, 0x30, 0x81, 0x89, 0x02, 0x81, + 0x81, 0x00, 0xBC, 0x73, 0x0E, 0xA8, 0x49, 0xF3, 0x74, 0xA2, + 0xA9, 0xEF, 0x18, 0xA5, 0xDA, 0x55, 0x99, 0x21, 0xF9, 0xC8, + 0xEC, 0xB3, 0x6D, 0x48, 0xE5, 0x35, 0x35, 0x75, 0x77, 0x37, + 0xEC, 0xD1, 0x61, 0x90, 0x5F, 0x3E, 0xD9, 0xE4, 0xD5, 0xDF, + 0x94, 0xCA, 0xC1, 0xA9, 0xD7, 0x19, 0xDA, 0x86, 0xC9, 0xE8, + 0x4D, 0xC4, 0x61, 0x36, 0x82, 0xFE, 0xAB, 0xAD, 0x7E, 0x77, + 0x25, 0xBB, 0x8D, 0x11, 0xA5, 0xBC, 0x62, 0x3A, 0xA8, 0x38, + 0xCC, 0x39, 0xA2, 0x04, 0x66, 0xB4, 0xF7, 0xF7, 0xF3, 0xAA, + 0xDA, 0x4D, 0x02, 0x0E, 0xBB, 0x5E, 0x8D, 0x69, 0x48, 0xDC, + 0x77, 0xC9, 0x28, 0x0E, 0x22, 0xE9, 0x6B, 0xA4, 0x26, 0xBA, + 0x4C, 0xE8, 0xC1, 0xFD, 0x4A, 0x6F, 0x2B, 0x1F, 0xEF, 0x8A, + 0xAE, 0xF6, 0x90, 0x62, 0xE5, 0x64, 0x1E, 0xEB, 0x2B, 0x3C, + 0x67, 0xC8, 0xDC, 0x27, 0x00, 0xF6, 0x91, 0x68, 0x65, 0xA9, + 0x02, 0x03, 0x01, 0x00, 0x01, 0xA3, 0x82, 0x01, 0x44, 0x30, + 0x82, 0x01, 0x40, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x0E, + 0x04, 0x16, 0x04, 0x14, 0x81, 0x69, 0x0F, 0xF8, 0xDF, 0xDD, + 0xCF, 0x34, 0x29, 0xD5, 0x67, 0x75, 0x71, 0x85, 0xC7, 0x75, + 0x10, 0x69, 0x59, 0xEC, 0x30, 0x81, 0xD3, 0x06, 0x03, 0x55, + 0x1D, 0x23, 0x04, 0x81, 0xCB, 0x30, 0x81, 0xC8, 0x80, 0x14, + 0x81, 0x69, 0x0F, 0xF8, 0xDF, 0xDD, 0xCF, 0x34, 0x29, 0xD5, + 0x67, 0x75, 0x71, 0x85, 0xC7, 0x75, 0x10, 0x69, 0x59, 0xEC, + 0xA1, 0x81, 0xA4, 0xA4, 0x81, 0xA1, 0x30, 0x81, 0x9E, 0x31, + 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, + 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, + 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, + 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, + 0x07, 0x42, 0x6F, 0x7A, 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x15, + 0x30, 0x13, 0x06, 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x0C, 0x77, + 0x6F, 0x6C, 0x66, 0x53, 0x53, 0x4C, 0x5F, 0x31, 0x30, 0x32, + 0x34, 0x31, 0x19, 0x30, 0x17, 0x06, 0x03, 0x55, 0x04, 0x0B, + 0x0C, 0x10, 0x50, 0x72, 0x6F, 0x67, 0x72, 0x61, 0x6D, 0x6D, + 0x69, 0x6E, 0x67, 0x2D, 0x31, 0x30, 0x32, 0x34, 0x31, 0x18, + 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, + 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, + 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, + 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, + 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, + 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x09, 0x00, + 0xC5, 0x19, 0x90, 0xA1, 0xC9, 0x01, 0x0F, 0xB9, 0x30, 0x0C, + 0x06, 0x03, 0x55, 0x1D, 0x13, 0x04, 0x05, 0x30, 0x03, 0x01, + 0x01, 0xFF, 0x30, 0x1C, 0x06, 0x03, 0x55, 0x1D, 0x11, 0x04, + 0x15, 0x30, 0x13, 0x82, 0x0B, 0x65, 0x78, 0x61, 0x6D, 0x70, + 0x6C, 0x65, 0x2E, 0x63, 0x6F, 0x6D, 0x87, 0x04, 0x7F, 0x00, + 0x00, 0x01, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x25, 0x04, + 0x16, 0x30, 0x14, 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, 0x05, + 0x07, 0x03, 0x01, 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, 0x05, + 0x07, 0x03, 0x02, 0x30, 0x0D, 0x06, 0x09, 0x2A, 0x86, 0x48, + 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, 0x00, 0x03, 0x81, + 0x81, 0x00, 0x30, 0xCE, 0x46, 0x43, 0x6D, 0x70, 0xE1, 0x6D, + 0xBB, 0x8F, 0x4A, 0x05, 0x64, 0xF7, 0x2C, 0x8D, 0x0E, 0xD6, + 0xF9, 0x1E, 0xB6, 0x2A, 0x8E, 0xED, 0x52, 0xE1, 0x7C, 0x44, + 0xBF, 0x59, 0x54, 0xDA, 0x2D, 0x31, 0x4D, 0xE6, 0x79, 0xD2, + 0xD0, 0xD8, 0xB4, 0xCF, 0x5B, 0x16, 0x0A, 0x16, 0xA1, 0xBE, + 0x62, 0x9F, 0x6C, 0x24, 0x46, 0x7B, 0xB8, 0xDD, 0xB8, 0x8D, + 0x7F, 0xFE, 0xF1, 0xAC, 0x62, 0x94, 0xE0, 0x34, 0xCE, 0x4C, + 0x59, 0x3A, 0xC5, 0x5A, 0xE6, 0x40, 0xD5, 0x60, 0x7E, 0x20, + 0x5D, 0xED, 0x43, 0x92, 0xD3, 0xF3, 0xEA, 0xE0, 0xD1, 0x57, + 0xC8, 0xCE, 0x41, 0x79, 0xDB, 0x81, 0x41, 0xC6, 0xF0, 0x0E, + 0x35, 0xD4, 0x6F, 0x92, 0x58, 0x2D, 0xD6, 0xB2, 0xEC, 0xF1, + 0x88, 0xFF, 0x6D, 0xCA, 0x63, 0xD6, 0x4A, 0x8D, 0x10, 0xA6, + 0x23, 0x06, 0x77, 0x9A, 0xD5, 0xAB, 0x9D, 0x64, 0x46, 0x02 + }; static const int sizeof_client_cert_der_1024 = sizeof(client_cert_der_1024); @@ -416,70 +414,29 @@ static const int sizeof_ca_key_der_1024 = sizeof(ca_key_der_1024); /* ./certs/1024/ca-cert.der, 1024-bit */ static const unsigned char ca_cert_der_1024[] = { - 0x30, 0x82, 0x04, 0x09, 0x30, 0x82, 0x03, 0x72, 0xA0, 0x03, - 0x02, 0x01, 0x02, 0x02, 0x14, 0x31, 0x42, 0xB4, 0x2B, 0x87, - 0xEF, 0x4B, 0x66, 0x93, 0xAF, 0x44, 0xDE, 0x45, 0x80, 0xD8, - 0x8E, 0x7E, 0xE3, 0xB5, 0x07, 0x30, 0x0D, 0x06, 0x09, 0x2A, - 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, 0x00, - 0x30, 0x81, 0x99, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, - 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, - 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, - 0x74, 0x61, 0x6E, 0x61, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, - 0x55, 0x04, 0x07, 0x0C, 0x07, 0x42, 0x6F, 0x7A, 0x65, 0x6D, - 0x61, 0x6E, 0x31, 0x11, 0x30, 0x0F, 0x06, 0x03, 0x55, 0x04, - 0x0A, 0x0C, 0x08, 0x53, 0x61, 0x77, 0x74, 0x6F, 0x6F, 0x74, - 0x68, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x0B, - 0x0C, 0x0F, 0x43, 0x6F, 0x6E, 0x73, 0x75, 0x6C, 0x74, 0x69, - 0x6E, 0x67, 0x5F, 0x31, 0x30, 0x32, 0x34, 0x31, 0x18, 0x30, - 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, - 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, - 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, - 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, - 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, - 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x30, 0x1E, 0x17, 0x0D, - 0x32, 0x30, 0x30, 0x36, 0x31, 0x39, 0x31, 0x33, 0x32, 0x33, - 0x34, 0x31, 0x5A, 0x17, 0x0D, 0x32, 0x33, 0x30, 0x33, 0x31, - 0x36, 0x31, 0x33, 0x32, 0x33, 0x34, 0x31, 0x5A, 0x30, 0x81, - 0x99, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, - 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, - 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, 0x61, - 0x6E, 0x61, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, - 0x07, 0x0C, 0x07, 0x42, 0x6F, 0x7A, 0x65, 0x6D, 0x61, 0x6E, - 0x31, 0x11, 0x30, 0x0F, 0x06, 0x03, 0x55, 0x04, 0x0A, 0x0C, - 0x08, 0x53, 0x61, 0x77, 0x74, 0x6F, 0x6F, 0x74, 0x68, 0x31, - 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x0F, - 0x43, 0x6F, 0x6E, 0x73, 0x75, 0x6C, 0x74, 0x69, 0x6E, 0x67, - 0x5F, 0x31, 0x30, 0x32, 0x34, 0x31, 0x18, 0x30, 0x16, 0x06, - 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, - 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, - 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, - 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, - 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, - 0x2E, 0x63, 0x6F, 0x6D, 0x30, 0x81, 0x9F, 0x30, 0x0D, 0x06, - 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x01, - 0x05, 0x00, 0x03, 0x81, 0x8D, 0x00, 0x30, 0x81, 0x89, 0x02, - 0x81, 0x81, 0x00, 0xCD, 0xAC, 0xDD, 0x47, 0xEC, 0xBE, 0xB7, - 0x24, 0xC3, 0x63, 0x1B, 0x54, 0x98, 0x79, 0xE1, 0xC7, 0x31, - 0x16, 0x59, 0xD6, 0x9D, 0x77, 0x9D, 0x8D, 0xE2, 0x8B, 0xED, - 0x04, 0x17, 0xB2, 0xC6, 0xEB, 0xE4, 0x9B, 0x91, 0xBE, 0x31, - 0x50, 0x62, 0x97, 0x58, 0xB5, 0x7F, 0x29, 0xDE, 0xB3, 0x71, - 0x24, 0x0B, 0xBF, 0x97, 0x09, 0x7F, 0x26, 0xDC, 0x2D, 0xEC, - 0xA8, 0x2E, 0xB2, 0x64, 0x2B, 0x7A, 0x2B, 0x35, 0x19, 0x2D, - 0xA2, 0x80, 0xCB, 0x99, 0xFD, 0x94, 0x71, 0x1B, 0x23, 0x8D, - 0x54, 0xDB, 0x2E, 0x62, 0x8D, 0x81, 0x08, 0x2D, 0xF4, 0x24, - 0x72, 0x27, 0x6C, 0xF9, 0xC9, 0x8E, 0xDB, 0x4C, 0x75, 0xBA, - 0x9B, 0x01, 0xF8, 0x3F, 0x18, 0xF4, 0xE6, 0x7F, 0xFB, 0x57, - 0x94, 0x92, 0xCC, 0x88, 0xC4, 0xB4, 0x00, 0xC2, 0xAA, 0xD4, - 0xE5, 0x88, 0x18, 0xB3, 0x11, 0x2F, 0x73, 0xC0, 0xD6, 0x29, - 0x09, 0x02, 0x03, 0x01, 0x00, 0x01, 0xA3, 0x82, 0x01, 0x4A, - 0x30, 0x82, 0x01, 0x46, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, - 0x0E, 0x04, 0x16, 0x04, 0x14, 0xD3, 0x22, 0x8F, 0x28, 0x2C, - 0xE0, 0x05, 0xEE, 0xD3, 0xED, 0xC3, 0x71, 0x3D, 0xC9, 0xB2, - 0x36, 0x3A, 0x1D, 0xBF, 0xA8, 0x30, 0x81, 0xD9, 0x06, 0x03, - 0x55, 0x1D, 0x23, 0x04, 0x81, 0xD1, 0x30, 0x81, 0xCE, 0x80, - 0x14, 0xD3, 0x22, 0x8F, 0x28, 0x2C, 0xE0, 0x05, 0xEE, 0xD3, - 0xED, 0xC3, 0x71, 0x3D, 0xC9, 0xB2, 0x36, 0x3A, 0x1D, 0xBF, - 0xA8, 0xA1, 0x81, 0x9F, 0xA4, 0x81, 0x9C, 0x30, 0x81, 0x99, + 0x30, 0x82, 0x03, 0xF3, 0x30, 0x82, 0x03, 0x5C, 0xA0, 0x03, + 0x02, 0x01, 0x02, 0x02, 0x09, 0x00, 0x97, 0x1D, 0x33, 0x11, + 0xE8, 0x40, 0x6E, 0x95, 0x30, 0x0D, 0x06, 0x09, 0x2A, 0x86, + 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, 0x00, 0x30, + 0x81, 0x99, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, + 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, + 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, + 0x61, 0x6E, 0x61, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, + 0x04, 0x07, 0x0C, 0x07, 0x42, 0x6F, 0x7A, 0x65, 0x6D, 0x61, + 0x6E, 0x31, 0x11, 0x30, 0x0F, 0x06, 0x03, 0x55, 0x04, 0x0A, + 0x0C, 0x08, 0x53, 0x61, 0x77, 0x74, 0x6F, 0x6F, 0x74, 0x68, + 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, + 0x0F, 0x43, 0x6F, 0x6E, 0x73, 0x75, 0x6C, 0x74, 0x69, 0x6E, + 0x67, 0x5F, 0x31, 0x30, 0x32, 0x34, 0x31, 0x18, 0x30, 0x16, + 0x06, 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, + 0x2E, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, + 0x6F, 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, + 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, + 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, + 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x30, 0x1E, 0x17, 0x0D, 0x32, + 0x31, 0x30, 0x32, 0x31, 0x30, 0x31, 0x39, 0x34, 0x39, 0x35, + 0x33, 0x5A, 0x17, 0x0D, 0x32, 0x33, 0x31, 0x31, 0x30, 0x37, + 0x31, 0x39, 0x34, 0x39, 0x35, 0x33, 0x5A, 0x30, 0x81, 0x99, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, 0x61, 0x6E, @@ -495,31 +452,70 @@ static const unsigned char ca_cert_der_1024[] = 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, - 0x63, 0x6F, 0x6D, 0x82, 0x14, 0x31, 0x42, 0xB4, 0x2B, 0x87, - 0xEF, 0x4B, 0x66, 0x93, 0xAF, 0x44, 0xDE, 0x45, 0x80, 0xD8, - 0x8E, 0x7E, 0xE3, 0xB5, 0x07, 0x30, 0x0C, 0x06, 0x03, 0x55, - 0x1D, 0x13, 0x04, 0x05, 0x30, 0x03, 0x01, 0x01, 0xFF, 0x30, - 0x1C, 0x06, 0x03, 0x55, 0x1D, 0x11, 0x04, 0x15, 0x30, 0x13, - 0x82, 0x0B, 0x65, 0x78, 0x61, 0x6D, 0x70, 0x6C, 0x65, 0x2E, - 0x63, 0x6F, 0x6D, 0x87, 0x04, 0x7F, 0x00, 0x00, 0x01, 0x30, - 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x25, 0x04, 0x16, 0x30, 0x14, - 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, 0x05, 0x07, 0x03, 0x01, - 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, 0x05, 0x07, 0x03, 0x02, - 0x30, 0x0D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, - 0x01, 0x01, 0x0B, 0x05, 0x00, 0x03, 0x81, 0x81, 0x00, 0x32, - 0xED, 0x94, 0x35, 0x3D, 0x4A, 0x76, 0xD7, 0x6E, 0xA9, 0x75, - 0xE9, 0xF5, 0x7A, 0x7F, 0x64, 0x31, 0x50, 0x6A, 0x28, 0xD5, - 0x92, 0x21, 0xD5, 0x88, 0xD2, 0x51, 0x82, 0xC5, 0xBB, 0x1A, - 0xF9, 0x26, 0xFA, 0xD8, 0x4B, 0x83, 0xB6, 0x09, 0xD4, 0x62, - 0x19, 0xE0, 0x55, 0x84, 0x97, 0x55, 0xBA, 0x5D, 0x21, 0x48, - 0x27, 0x10, 0xF0, 0xF3, 0x5C, 0x33, 0xB8, 0x38, 0x9B, 0xFB, - 0x57, 0x4C, 0xD8, 0x1C, 0x5B, 0xAB, 0xD3, 0x1C, 0x21, 0xEE, - 0x3E, 0x2E, 0xB8, 0xC6, 0x3A, 0x92, 0x5C, 0x38, 0x3C, 0x25, - 0x40, 0x2F, 0x05, 0xC6, 0xC9, 0x85, 0xFF, 0x27, 0xF3, 0xEE, - 0xFA, 0x10, 0x58, 0xDB, 0x5C, 0xA6, 0x8E, 0xE0, 0xD9, 0x70, - 0x93, 0xCD, 0xBE, 0x7E, 0x68, 0x33, 0x08, 0xC2, 0x28, 0xD6, - 0x5C, 0xB3, 0x15, 0x19, 0xAF, 0x0C, 0xF7, 0xBA, 0xF0, 0xBC, - 0xA1, 0xCF, 0x30, 0x4E, 0x38, 0xE6, 0x4D + 0x63, 0x6F, 0x6D, 0x30, 0x81, 0x9F, 0x30, 0x0D, 0x06, 0x09, + 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x01, 0x05, + 0x00, 0x03, 0x81, 0x8D, 0x00, 0x30, 0x81, 0x89, 0x02, 0x81, + 0x81, 0x00, 0xCD, 0xAC, 0xDD, 0x47, 0xEC, 0xBE, 0xB7, 0x24, + 0xC3, 0x63, 0x1B, 0x54, 0x98, 0x79, 0xE1, 0xC7, 0x31, 0x16, + 0x59, 0xD6, 0x9D, 0x77, 0x9D, 0x8D, 0xE2, 0x8B, 0xED, 0x04, + 0x17, 0xB2, 0xC6, 0xEB, 0xE4, 0x9B, 0x91, 0xBE, 0x31, 0x50, + 0x62, 0x97, 0x58, 0xB5, 0x7F, 0x29, 0xDE, 0xB3, 0x71, 0x24, + 0x0B, 0xBF, 0x97, 0x09, 0x7F, 0x26, 0xDC, 0x2D, 0xEC, 0xA8, + 0x2E, 0xB2, 0x64, 0x2B, 0x7A, 0x2B, 0x35, 0x19, 0x2D, 0xA2, + 0x80, 0xCB, 0x99, 0xFD, 0x94, 0x71, 0x1B, 0x23, 0x8D, 0x54, + 0xDB, 0x2E, 0x62, 0x8D, 0x81, 0x08, 0x2D, 0xF4, 0x24, 0x72, + 0x27, 0x6C, 0xF9, 0xC9, 0x8E, 0xDB, 0x4C, 0x75, 0xBA, 0x9B, + 0x01, 0xF8, 0x3F, 0x18, 0xF4, 0xE6, 0x7F, 0xFB, 0x57, 0x94, + 0x92, 0xCC, 0x88, 0xC4, 0xB4, 0x00, 0xC2, 0xAA, 0xD4, 0xE5, + 0x88, 0x18, 0xB3, 0x11, 0x2F, 0x73, 0xC0, 0xD6, 0x29, 0x09, + 0x02, 0x03, 0x01, 0x00, 0x01, 0xA3, 0x82, 0x01, 0x3F, 0x30, + 0x82, 0x01, 0x3B, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x0E, + 0x04, 0x16, 0x04, 0x14, 0xD3, 0x22, 0x8F, 0x28, 0x2C, 0xE0, + 0x05, 0xEE, 0xD3, 0xED, 0xC3, 0x71, 0x3D, 0xC9, 0xB2, 0x36, + 0x3A, 0x1D, 0xBF, 0xA8, 0x30, 0x81, 0xCE, 0x06, 0x03, 0x55, + 0x1D, 0x23, 0x04, 0x81, 0xC6, 0x30, 0x81, 0xC3, 0x80, 0x14, + 0xD3, 0x22, 0x8F, 0x28, 0x2C, 0xE0, 0x05, 0xEE, 0xD3, 0xED, + 0xC3, 0x71, 0x3D, 0xC9, 0xB2, 0x36, 0x3A, 0x1D, 0xBF, 0xA8, + 0xA1, 0x81, 0x9F, 0xA4, 0x81, 0x9C, 0x30, 0x81, 0x99, 0x31, + 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, + 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, + 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, + 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, + 0x07, 0x42, 0x6F, 0x7A, 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x11, + 0x30, 0x0F, 0x06, 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x08, 0x53, + 0x61, 0x77, 0x74, 0x6F, 0x6F, 0x74, 0x68, 0x31, 0x18, 0x30, + 0x16, 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x0F, 0x43, 0x6F, + 0x6E, 0x73, 0x75, 0x6C, 0x74, 0x69, 0x6E, 0x67, 0x5F, 0x31, + 0x30, 0x32, 0x34, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, + 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, + 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x31, + 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, + 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, + 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, + 0x6F, 0x6D, 0x82, 0x09, 0x00, 0x97, 0x1D, 0x33, 0x11, 0xE8, + 0x40, 0x6E, 0x95, 0x30, 0x0C, 0x06, 0x03, 0x55, 0x1D, 0x13, + 0x04, 0x05, 0x30, 0x03, 0x01, 0x01, 0xFF, 0x30, 0x1C, 0x06, + 0x03, 0x55, 0x1D, 0x11, 0x04, 0x15, 0x30, 0x13, 0x82, 0x0B, + 0x65, 0x78, 0x61, 0x6D, 0x70, 0x6C, 0x65, 0x2E, 0x63, 0x6F, + 0x6D, 0x87, 0x04, 0x7F, 0x00, 0x00, 0x01, 0x30, 0x1D, 0x06, + 0x03, 0x55, 0x1D, 0x25, 0x04, 0x16, 0x30, 0x14, 0x06, 0x08, + 0x2B, 0x06, 0x01, 0x05, 0x05, 0x07, 0x03, 0x01, 0x06, 0x08, + 0x2B, 0x06, 0x01, 0x05, 0x05, 0x07, 0x03, 0x02, 0x30, 0x0D, + 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, + 0x0B, 0x05, 0x00, 0x03, 0x81, 0x81, 0x00, 0x4E, 0xB1, 0x39, + 0x6A, 0x23, 0xA3, 0x65, 0x17, 0x14, 0xB6, 0x52, 0x2E, 0x86, + 0x46, 0xD5, 0x4F, 0x7C, 0xD5, 0x6C, 0xBB, 0xFA, 0x66, 0xB1, + 0x71, 0x54, 0xA1, 0xAD, 0x0E, 0xA2, 0xB7, 0xBA, 0x59, 0x65, + 0x8B, 0xD5, 0x87, 0x5D, 0x51, 0xD0, 0x65, 0xDE, 0x74, 0x04, + 0x80, 0x7C, 0xDA, 0x3A, 0x52, 0x57, 0x7A, 0x1D, 0x5D, 0x46, + 0x7A, 0x06, 0x79, 0x75, 0xE5, 0x31, 0xDD, 0x1D, 0xF6, 0x54, + 0x77, 0xFC, 0x40, 0x13, 0xA1, 0x5B, 0xFD, 0x9E, 0x7D, 0x1C, + 0xFD, 0x04, 0x4F, 0x7C, 0xEE, 0x92, 0xA2, 0x80, 0x55, 0x3C, + 0x3F, 0x2A, 0x1C, 0xBD, 0x3A, 0x37, 0x12, 0x0E, 0xFD, 0x52, + 0x60, 0x66, 0x19, 0xD5, 0x4B, 0xF6, 0x35, 0x50, 0xA3, 0x59, + 0xD3, 0x7F, 0x6D, 0x95, 0xD7, 0x56, 0x10, 0xC6, 0x86, 0x28, + 0xF4, 0x6E, 0x6D, 0xDA, 0x4E, 0x1C, 0xB4, 0xE9, 0x0B, 0x4C, + 0xED, 0x62, 0x0F, 0x64, 0x06 }; static const int sizeof_ca_cert_der_1024 = sizeof(ca_cert_der_1024); @@ -593,7 +589,7 @@ static const int sizeof_server_key_der_1024 = sizeof(server_key_der_1024); /* ./certs/1024/server-cert.der, 1024-bit */ static const unsigned char server_cert_der_1024[] = { - 0x30, 0x82, 0x03, 0xF2, 0x30, 0x82, 0x03, 0x5B, 0xA0, 0x03, + 0x30, 0x82, 0x03, 0xE7, 0x30, 0x82, 0x03, 0x50, 0xA0, 0x03, 0x02, 0x01, 0x02, 0x02, 0x01, 0x01, 0x30, 0x0D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, 0x00, 0x30, 0x81, 0x99, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, @@ -612,9 +608,9 @@ static const unsigned char server_cert_der_1024[] = 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x30, 0x1E, 0x17, - 0x0D, 0x32, 0x30, 0x30, 0x36, 0x31, 0x39, 0x31, 0x33, 0x32, - 0x33, 0x34, 0x31, 0x5A, 0x17, 0x0D, 0x32, 0x33, 0x30, 0x33, - 0x31, 0x36, 0x31, 0x33, 0x32, 0x33, 0x34, 0x31, 0x5A, 0x30, + 0x0D, 0x32, 0x31, 0x30, 0x32, 0x31, 0x30, 0x31, 0x39, 0x34, + 0x39, 0x35, 0x33, 0x5A, 0x17, 0x0D, 0x32, 0x33, 0x31, 0x31, + 0x30, 0x37, 0x31, 0x39, 0x34, 0x39, 0x35, 0x33, 0x5A, 0x30, 0x81, 0x95, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, @@ -646,12 +642,12 @@ static const unsigned char server_cert_der_1024[] = 0xAD, 0xFD, 0x5C, 0x86, 0x73, 0xAA, 0x6B, 0x47, 0xD8, 0x8B, 0x2E, 0x58, 0x4B, 0x69, 0x12, 0x82, 0x26, 0x55, 0xE6, 0x14, 0xBF, 0x55, 0x70, 0x88, 0xFE, 0xF9, 0x75, 0xE1, 0x02, 0x03, - 0x01, 0x00, 0x01, 0xA3, 0x82, 0x01, 0x4A, 0x30, 0x82, 0x01, - 0x46, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x0E, 0x04, 0x16, + 0x01, 0x00, 0x01, 0xA3, 0x82, 0x01, 0x3F, 0x30, 0x82, 0x01, + 0x3B, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x0E, 0x04, 0x16, 0x04, 0x14, 0xD9, 0x3C, 0x35, 0xEA, 0x74, 0x0E, 0x23, 0xBE, 0x9C, 0xFC, 0xFA, 0x29, 0x90, 0x09, 0xC1, 0xE7, 0x84, 0x16, - 0x9F, 0x7C, 0x30, 0x81, 0xD9, 0x06, 0x03, 0x55, 0x1D, 0x23, - 0x04, 0x81, 0xD1, 0x30, 0x81, 0xCE, 0x80, 0x14, 0xD3, 0x22, + 0x9F, 0x7C, 0x30, 0x81, 0xCE, 0x06, 0x03, 0x55, 0x1D, 0x23, + 0x04, 0x81, 0xC6, 0x30, 0x81, 0xC3, 0x80, 0x14, 0xD3, 0x22, 0x8F, 0x28, 0x2C, 0xE0, 0x05, 0xEE, 0xD3, 0xED, 0xC3, 0x71, 0x3D, 0xC9, 0xB2, 0x36, 0x3A, 0x1D, 0xBF, 0xA8, 0xA1, 0x81, 0x9F, 0xA4, 0x81, 0x9C, 0x30, 0x81, 0x99, 0x31, 0x0B, 0x30, @@ -670,31 +666,30 @@ static const unsigned char server_cert_der_1024[] = 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, - 0x82, 0x14, 0x31, 0x42, 0xB4, 0x2B, 0x87, 0xEF, 0x4B, 0x66, - 0x93, 0xAF, 0x44, 0xDE, 0x45, 0x80, 0xD8, 0x8E, 0x7E, 0xE3, - 0xB5, 0x07, 0x30, 0x0C, 0x06, 0x03, 0x55, 0x1D, 0x13, 0x04, - 0x05, 0x30, 0x03, 0x01, 0x01, 0xFF, 0x30, 0x1C, 0x06, 0x03, - 0x55, 0x1D, 0x11, 0x04, 0x15, 0x30, 0x13, 0x82, 0x0B, 0x65, - 0x78, 0x61, 0x6D, 0x70, 0x6C, 0x65, 0x2E, 0x63, 0x6F, 0x6D, - 0x87, 0x04, 0x7F, 0x00, 0x00, 0x01, 0x30, 0x1D, 0x06, 0x03, - 0x55, 0x1D, 0x25, 0x04, 0x16, 0x30, 0x14, 0x06, 0x08, 0x2B, - 0x06, 0x01, 0x05, 0x05, 0x07, 0x03, 0x01, 0x06, 0x08, 0x2B, - 0x06, 0x01, 0x05, 0x05, 0x07, 0x03, 0x02, 0x30, 0x0D, 0x06, - 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, - 0x05, 0x00, 0x03, 0x81, 0x81, 0x00, 0x56, 0x14, 0x19, 0x1A, - 0x4F, 0x09, 0x91, 0xCD, 0xF5, 0xA7, 0xC5, 0x69, 0xE4, 0xEA, - 0x1A, 0xFD, 0x56, 0xC3, 0x55, 0xFE, 0xC8, 0xCC, 0xED, 0x56, - 0xA8, 0x5F, 0x86, 0xFB, 0xAB, 0x9F, 0x76, 0x8A, 0xDB, 0xB3, - 0xCC, 0x68, 0xCE, 0x99, 0xFB, 0xA4, 0x5E, 0x70, 0xA8, 0x3C, - 0xA8, 0xB6, 0x85, 0x7C, 0xCB, 0x31, 0xFE, 0x4B, 0x01, 0x0C, - 0xAC, 0xF0, 0x19, 0x04, 0x98, 0xD0, 0xE7, 0xA5, 0xA2, 0x51, - 0xE2, 0x52, 0xA3, 0xF7, 0x42, 0xD4, 0xE2, 0x2D, 0xF2, 0x72, - 0xB5, 0xE7, 0x95, 0xD0, 0xB4, 0xE3, 0xD3, 0xC1, 0x34, 0xA4, - 0x2F, 0x7C, 0x3C, 0xEF, 0xF0, 0x45, 0x14, 0x32, 0x2F, 0xC8, - 0xBF, 0x9F, 0xDA, 0x97, 0x6A, 0xDA, 0xCB, 0x3F, 0xEF, 0x1F, - 0xCA, 0xDC, 0x7A, 0x13, 0x1B, 0x5A, 0x45, 0x41, 0xF8, 0xF0, - 0x34, 0x49, 0x9D, 0x58, 0x23, 0x85, 0x3D, 0x99, 0xAB, 0x34, - 0xDE, 0x51, 0x32, 0x76 + 0x82, 0x09, 0x00, 0x97, 0x1D, 0x33, 0x11, 0xE8, 0x40, 0x6E, + 0x95, 0x30, 0x0C, 0x06, 0x03, 0x55, 0x1D, 0x13, 0x04, 0x05, + 0x30, 0x03, 0x01, 0x01, 0xFF, 0x30, 0x1C, 0x06, 0x03, 0x55, + 0x1D, 0x11, 0x04, 0x15, 0x30, 0x13, 0x82, 0x0B, 0x65, 0x78, + 0x61, 0x6D, 0x70, 0x6C, 0x65, 0x2E, 0x63, 0x6F, 0x6D, 0x87, + 0x04, 0x7F, 0x00, 0x00, 0x01, 0x30, 0x1D, 0x06, 0x03, 0x55, + 0x1D, 0x25, 0x04, 0x16, 0x30, 0x14, 0x06, 0x08, 0x2B, 0x06, + 0x01, 0x05, 0x05, 0x07, 0x03, 0x01, 0x06, 0x08, 0x2B, 0x06, + 0x01, 0x05, 0x05, 0x07, 0x03, 0x02, 0x30, 0x0D, 0x06, 0x09, + 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, + 0x00, 0x03, 0x81, 0x81, 0x00, 0x27, 0x0A, 0x4E, 0x08, 0x8C, + 0xBA, 0x73, 0xD0, 0x05, 0xF2, 0xEA, 0xF9, 0x51, 0x8C, 0x7E, + 0x29, 0x14, 0x23, 0x8E, 0x9E, 0x9A, 0xFC, 0x46, 0x6F, 0x10, + 0x68, 0x59, 0xD9, 0xA0, 0xEA, 0x53, 0x19, 0xBD, 0x28, 0x89, + 0xE1, 0x97, 0x1E, 0x4C, 0xB8, 0x1E, 0xBE, 0x0F, 0x4D, 0x9D, + 0x1D, 0x76, 0x57, 0x17, 0x31, 0x95, 0xC2, 0x80, 0xBE, 0x04, + 0xD0, 0xC2, 0xE9, 0x5C, 0xE0, 0xF4, 0x81, 0x3F, 0xC4, 0xB0, + 0xC5, 0x86, 0xAE, 0x58, 0x68, 0xB9, 0xAE, 0x0F, 0x88, 0xE8, + 0x63, 0x6F, 0xB9, 0x08, 0xF1, 0x1B, 0x56, 0x90, 0xFB, 0x1F, + 0x2E, 0xCC, 0xE5, 0x69, 0x1F, 0x7C, 0x02, 0x4F, 0xED, 0xB0, + 0x45, 0x7C, 0x2D, 0xA8, 0x59, 0x11, 0xA5, 0x95, 0x51, 0xC7, + 0x50, 0xD8, 0x89, 0xC2, 0x90, 0x63, 0x68, 0xA8, 0x41, 0x6F, + 0xD0, 0x37, 0x26, 0x6F, 0xC8, 0x0E, 0xB5, 0xA0, 0x15, 0x9D, + 0xA5, 0xE6, 0xD2 }; static const int sizeof_server_cert_der_1024 = sizeof(server_cert_der_1024); @@ -867,84 +862,10 @@ static const int sizeof_client_keypub_der_2048 = sizeof(client_keypub_der_2048); /* ./certs/client-cert.der, 2048-bit */ static const unsigned char client_cert_der_2048[] = { - 0x30, 0x82, 0x05, 0x1D, 0x30, 0x82, 0x04, 0x05, 0xA0, 0x03, - 0x02, 0x01, 0x02, 0x02, 0x14, 0x45, 0x45, 0x81, 0x82, 0xE6, - 0x3A, 0xBD, 0xA2, 0xE3, 0x06, 0x0E, 0xBA, 0x2C, 0x45, 0x74, - 0x4B, 0xBE, 0xC0, 0x39, 0x11, 0x30, 0x0D, 0x06, 0x09, 0x2A, - 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, 0x00, - 0x30, 0x81, 0x9E, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, - 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, - 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, - 0x74, 0x61, 0x6E, 0x61, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, - 0x55, 0x04, 0x07, 0x0C, 0x07, 0x42, 0x6F, 0x7A, 0x65, 0x6D, - 0x61, 0x6E, 0x31, 0x15, 0x30, 0x13, 0x06, 0x03, 0x55, 0x04, - 0x0A, 0x0C, 0x0C, 0x77, 0x6F, 0x6C, 0x66, 0x53, 0x53, 0x4C, - 0x5F, 0x32, 0x30, 0x34, 0x38, 0x31, 0x19, 0x30, 0x17, 0x06, - 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x10, 0x50, 0x72, 0x6F, 0x67, - 0x72, 0x61, 0x6D, 0x6D, 0x69, 0x6E, 0x67, 0x2D, 0x32, 0x30, - 0x34, 0x38, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, - 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, - 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, - 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, - 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, - 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, - 0x6D, 0x30, 0x1E, 0x17, 0x0D, 0x32, 0x30, 0x30, 0x36, 0x31, - 0x39, 0x31, 0x33, 0x32, 0x33, 0x34, 0x31, 0x5A, 0x17, 0x0D, - 0x32, 0x33, 0x30, 0x33, 0x31, 0x36, 0x31, 0x33, 0x32, 0x33, - 0x34, 0x31, 0x5A, 0x30, 0x81, 0x9E, 0x31, 0x0B, 0x30, 0x09, - 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, - 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, - 0x4D, 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, 0x31, 0x10, 0x30, - 0x0E, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, 0x07, 0x42, 0x6F, - 0x7A, 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x15, 0x30, 0x13, 0x06, - 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x0C, 0x77, 0x6F, 0x6C, 0x66, - 0x53, 0x53, 0x4C, 0x5F, 0x32, 0x30, 0x34, 0x38, 0x31, 0x19, - 0x30, 0x17, 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x10, 0x50, - 0x72, 0x6F, 0x67, 0x72, 0x61, 0x6D, 0x6D, 0x69, 0x6E, 0x67, - 0x2D, 0x32, 0x30, 0x34, 0x38, 0x31, 0x18, 0x30, 0x16, 0x06, - 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, - 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, - 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, - 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, - 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, - 0x2E, 0x63, 0x6F, 0x6D, 0x30, 0x82, 0x01, 0x22, 0x30, 0x0D, - 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, - 0x01, 0x05, 0x00, 0x03, 0x82, 0x01, 0x0F, 0x00, 0x30, 0x82, - 0x01, 0x0A, 0x02, 0x82, 0x01, 0x01, 0x00, 0xC3, 0x03, 0xD1, - 0x2B, 0xFE, 0x39, 0xA4, 0x32, 0x45, 0x3B, 0x53, 0xC8, 0x84, - 0x2B, 0x2A, 0x7C, 0x74, 0x9A, 0xBD, 0xAA, 0x2A, 0x52, 0x07, - 0x47, 0xD6, 0xA6, 0x36, 0xB2, 0x07, 0x32, 0x8E, 0xD0, 0xBA, - 0x69, 0x7B, 0xC6, 0xC3, 0x44, 0x9E, 0xD4, 0x81, 0x48, 0xFD, - 0x2D, 0x68, 0xA2, 0x8B, 0x67, 0xBB, 0xA1, 0x75, 0xC8, 0x36, - 0x2C, 0x4A, 0xD2, 0x1B, 0xF7, 0x8B, 0xBA, 0xCF, 0x0D, 0xF9, - 0xEF, 0xEC, 0xF1, 0x81, 0x1E, 0x7B, 0x9B, 0x03, 0x47, 0x9A, - 0xBF, 0x65, 0xCC, 0x7F, 0x65, 0x24, 0x69, 0xA6, 0xE8, 0x14, - 0x89, 0x5B, 0xE4, 0x34, 0xF7, 0xC5, 0xB0, 0x14, 0x93, 0xF5, - 0x67, 0x7B, 0x3A, 0x7A, 0x78, 0xE1, 0x01, 0x56, 0x56, 0x91, - 0xA6, 0x13, 0x42, 0x8D, 0xD2, 0x3C, 0x40, 0x9C, 0x4C, 0xEF, - 0xD1, 0x86, 0xDF, 0x37, 0x51, 0x1B, 0x0C, 0xA1, 0x3B, 0xF5, - 0xF1, 0xA3, 0x4A, 0x35, 0xE4, 0xE1, 0xCE, 0x96, 0xDF, 0x1B, - 0x7E, 0xBF, 0x4E, 0x97, 0xD0, 0x10, 0xE8, 0xA8, 0x08, 0x30, - 0x81, 0xAF, 0x20, 0x0B, 0x43, 0x14, 0xC5, 0x74, 0x67, 0xB4, - 0x32, 0x82, 0x6F, 0x8D, 0x86, 0xC2, 0x88, 0x40, 0x99, 0x36, - 0x83, 0xBA, 0x1E, 0x40, 0x72, 0x22, 0x17, 0xD7, 0x52, 0x65, - 0x24, 0x73, 0xB0, 0xCE, 0xEF, 0x19, 0xCD, 0xAE, 0xFF, 0x78, - 0x6C, 0x7B, 0xC0, 0x12, 0x03, 0xD4, 0x4E, 0x72, 0x0D, 0x50, - 0x6D, 0x3B, 0xA3, 0x3B, 0xA3, 0x99, 0x5E, 0x9D, 0xC8, 0xD9, - 0x0C, 0x85, 0xB3, 0xD9, 0x8A, 0xD9, 0x54, 0x26, 0xDB, 0x6D, - 0xFA, 0xAC, 0xBB, 0xFF, 0x25, 0x4C, 0xC4, 0xD1, 0x79, 0xF4, - 0x71, 0xD3, 0x86, 0x40, 0x18, 0x13, 0xB0, 0x63, 0xB5, 0x72, - 0x4E, 0x30, 0xC4, 0x97, 0x84, 0x86, 0x2D, 0x56, 0x2F, 0xD7, - 0x15, 0xF7, 0x7F, 0xC0, 0xAE, 0xF5, 0xFC, 0x5B, 0xE5, 0xFB, - 0xA1, 0xBA, 0xD3, 0x02, 0x03, 0x01, 0x00, 0x01, 0xA3, 0x82, - 0x01, 0x4F, 0x30, 0x82, 0x01, 0x4B, 0x30, 0x1D, 0x06, 0x03, - 0x55, 0x1D, 0x0E, 0x04, 0x16, 0x04, 0x14, 0x33, 0xD8, 0x45, - 0x66, 0xD7, 0x68, 0x87, 0x18, 0x7E, 0x54, 0x0D, 0x70, 0x27, - 0x91, 0xC7, 0x26, 0xD7, 0x85, 0x65, 0xC0, 0x30, 0x81, 0xDE, - 0x06, 0x03, 0x55, 0x1D, 0x23, 0x04, 0x81, 0xD6, 0x30, 0x81, - 0xD3, 0x80, 0x14, 0x33, 0xD8, 0x45, 0x66, 0xD7, 0x68, 0x87, - 0x18, 0x7E, 0x54, 0x0D, 0x70, 0x27, 0x91, 0xC7, 0x26, 0xD7, - 0x85, 0x65, 0xC0, 0xA1, 0x81, 0xA4, 0xA4, 0x81, 0xA1, 0x30, + 0x30, 0x82, 0x05, 0x07, 0x30, 0x82, 0x03, 0xEF, 0xA0, 0x03, + 0x02, 0x01, 0x02, 0x02, 0x09, 0x00, 0xF1, 0x5C, 0x99, 0x43, + 0x66, 0x3D, 0x96, 0x04, 0x30, 0x0D, 0x06, 0x09, 0x2A, 0x86, + 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, 0x00, 0x30, 0x81, 0x9E, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, @@ -961,44 +882,116 @@ static const unsigned char client_cert_der_2048[] = 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, - 0x82, 0x14, 0x45, 0x45, 0x81, 0x82, 0xE6, 0x3A, 0xBD, 0xA2, - 0xE3, 0x06, 0x0E, 0xBA, 0x2C, 0x45, 0x74, 0x4B, 0xBE, 0xC0, - 0x39, 0x11, 0x30, 0x0C, 0x06, 0x03, 0x55, 0x1D, 0x13, 0x04, - 0x05, 0x30, 0x03, 0x01, 0x01, 0xFF, 0x30, 0x1C, 0x06, 0x03, - 0x55, 0x1D, 0x11, 0x04, 0x15, 0x30, 0x13, 0x82, 0x0B, 0x65, - 0x78, 0x61, 0x6D, 0x70, 0x6C, 0x65, 0x2E, 0x63, 0x6F, 0x6D, - 0x87, 0x04, 0x7F, 0x00, 0x00, 0x01, 0x30, 0x1D, 0x06, 0x03, - 0x55, 0x1D, 0x25, 0x04, 0x16, 0x30, 0x14, 0x06, 0x08, 0x2B, - 0x06, 0x01, 0x05, 0x05, 0x07, 0x03, 0x01, 0x06, 0x08, 0x2B, - 0x06, 0x01, 0x05, 0x05, 0x07, 0x03, 0x02, 0x30, 0x0D, 0x06, - 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, - 0x05, 0x00, 0x03, 0x82, 0x01, 0x01, 0x00, 0xC1, 0x06, 0x39, - 0xC8, 0xCE, 0xF5, 0x81, 0x49, 0x55, 0xE1, 0x3A, 0x55, 0xAA, - 0x91, 0x5D, 0x64, 0xF1, 0x4B, 0xDC, 0x33, 0x1E, 0x31, 0x15, - 0xE7, 0x10, 0x71, 0x16, 0x0D, 0xB5, 0x00, 0xDC, 0xBB, 0x22, - 0x0D, 0x81, 0xD9, 0x12, 0x5C, 0x0C, 0xDD, 0x61, 0xE1, 0xAF, - 0xB5, 0xE2, 0xF7, 0x7D, 0x8B, 0xE6, 0x61, 0xFD, 0xCA, 0x45, - 0x3A, 0x61, 0xE7, 0x18, 0x56, 0x2C, 0x26, 0xF2, 0xDF, 0x14, - 0xF1, 0xE0, 0x3D, 0x7F, 0x62, 0x12, 0x5F, 0xD8, 0x04, 0x44, - 0x06, 0x0C, 0x72, 0xB1, 0x8A, 0x50, 0x72, 0x67, 0x77, 0x74, - 0x01, 0xFF, 0x79, 0x64, 0x11, 0x6E, 0xB3, 0x84, 0x51, 0x19, - 0x22, 0xB6, 0x43, 0x10, 0x06, 0x0D, 0x39, 0x46, 0x5A, 0xC6, - 0x57, 0x0A, 0x43, 0xA1, 0x94, 0x02, 0x28, 0x0A, 0x12, 0x38, - 0x85, 0x04, 0x0E, 0x78, 0x52, 0x48, 0x28, 0x7E, 0x6C, 0xD9, - 0xF0, 0x4B, 0x04, 0x55, 0x7C, 0x39, 0x01, 0xC1, 0xB4, 0x5F, - 0x50, 0x06, 0xCF, 0xDA, 0x6F, 0x20, 0xB8, 0x94, 0xF7, 0x51, - 0x1A, 0x23, 0xCB, 0x30, 0xE3, 0x21, 0xB4, 0xA3, 0x73, 0xAD, - 0x48, 0xFB, 0x96, 0x69, 0xEF, 0x2E, 0x50, 0xB6, 0x67, 0xBC, - 0x64, 0xEE, 0x27, 0x76, 0x43, 0x7A, 0x34, 0x59, 0x8E, 0xB4, - 0x57, 0x53, 0x7D, 0x95, 0x7E, 0x50, 0x7E, 0x64, 0x4C, 0x29, - 0x68, 0xFE, 0x81, 0x4F, 0x73, 0x21, 0x24, 0xB5, 0xA9, 0xA2, - 0x49, 0x5F, 0x54, 0x7F, 0x0D, 0xC2, 0x96, 0xC7, 0xF5, 0x36, - 0x81, 0x8E, 0xC0, 0x00, 0xAF, 0xB4, 0x10, 0x6B, 0x0E, 0xBC, - 0x1A, 0x3A, 0xF1, 0xA6, 0xDD, 0xFD, 0x8E, 0x63, 0x21, 0x33, - 0xD4, 0x32, 0x31, 0x1F, 0xBE, 0xA3, 0x7C, 0x52, 0x85, 0x26, - 0xC8, 0x6E, 0x50, 0x6C, 0xAC, 0x3D, 0x2E, 0xC0, 0xF9, 0x50, - 0xED, 0xC8, 0x4D, 0xCD, 0x13, 0x50, 0xCE, 0x5E, 0xDE, 0x15, - 0x89, 0xD1, 0xFB + 0x30, 0x1E, 0x17, 0x0D, 0x32, 0x31, 0x30, 0x32, 0x31, 0x30, + 0x31, 0x39, 0x34, 0x39, 0x35, 0x32, 0x5A, 0x17, 0x0D, 0x32, + 0x33, 0x31, 0x31, 0x30, 0x37, 0x31, 0x39, 0x34, 0x39, 0x35, + 0x32, 0x5A, 0x30, 0x81, 0x9E, 0x31, 0x0B, 0x30, 0x09, 0x06, + 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, + 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, + 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, 0x31, 0x10, 0x30, 0x0E, + 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, 0x07, 0x42, 0x6F, 0x7A, + 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x15, 0x30, 0x13, 0x06, 0x03, + 0x55, 0x04, 0x0A, 0x0C, 0x0C, 0x77, 0x6F, 0x6C, 0x66, 0x53, + 0x53, 0x4C, 0x5F, 0x32, 0x30, 0x34, 0x38, 0x31, 0x19, 0x30, + 0x17, 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x10, 0x50, 0x72, + 0x6F, 0x67, 0x72, 0x61, 0x6D, 0x6D, 0x69, 0x6E, 0x67, 0x2D, + 0x32, 0x30, 0x34, 0x38, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, + 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, + 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, + 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, + 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, + 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, + 0x63, 0x6F, 0x6D, 0x30, 0x82, 0x01, 0x22, 0x30, 0x0D, 0x06, + 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x01, + 0x05, 0x00, 0x03, 0x82, 0x01, 0x0F, 0x00, 0x30, 0x82, 0x01, + 0x0A, 0x02, 0x82, 0x01, 0x01, 0x00, 0xC3, 0x03, 0xD1, 0x2B, + 0xFE, 0x39, 0xA4, 0x32, 0x45, 0x3B, 0x53, 0xC8, 0x84, 0x2B, + 0x2A, 0x7C, 0x74, 0x9A, 0xBD, 0xAA, 0x2A, 0x52, 0x07, 0x47, + 0xD6, 0xA6, 0x36, 0xB2, 0x07, 0x32, 0x8E, 0xD0, 0xBA, 0x69, + 0x7B, 0xC6, 0xC3, 0x44, 0x9E, 0xD4, 0x81, 0x48, 0xFD, 0x2D, + 0x68, 0xA2, 0x8B, 0x67, 0xBB, 0xA1, 0x75, 0xC8, 0x36, 0x2C, + 0x4A, 0xD2, 0x1B, 0xF7, 0x8B, 0xBA, 0xCF, 0x0D, 0xF9, 0xEF, + 0xEC, 0xF1, 0x81, 0x1E, 0x7B, 0x9B, 0x03, 0x47, 0x9A, 0xBF, + 0x65, 0xCC, 0x7F, 0x65, 0x24, 0x69, 0xA6, 0xE8, 0x14, 0x89, + 0x5B, 0xE4, 0x34, 0xF7, 0xC5, 0xB0, 0x14, 0x93, 0xF5, 0x67, + 0x7B, 0x3A, 0x7A, 0x78, 0xE1, 0x01, 0x56, 0x56, 0x91, 0xA6, + 0x13, 0x42, 0x8D, 0xD2, 0x3C, 0x40, 0x9C, 0x4C, 0xEF, 0xD1, + 0x86, 0xDF, 0x37, 0x51, 0x1B, 0x0C, 0xA1, 0x3B, 0xF5, 0xF1, + 0xA3, 0x4A, 0x35, 0xE4, 0xE1, 0xCE, 0x96, 0xDF, 0x1B, 0x7E, + 0xBF, 0x4E, 0x97, 0xD0, 0x10, 0xE8, 0xA8, 0x08, 0x30, 0x81, + 0xAF, 0x20, 0x0B, 0x43, 0x14, 0xC5, 0x74, 0x67, 0xB4, 0x32, + 0x82, 0x6F, 0x8D, 0x86, 0xC2, 0x88, 0x40, 0x99, 0x36, 0x83, + 0xBA, 0x1E, 0x40, 0x72, 0x22, 0x17, 0xD7, 0x52, 0x65, 0x24, + 0x73, 0xB0, 0xCE, 0xEF, 0x19, 0xCD, 0xAE, 0xFF, 0x78, 0x6C, + 0x7B, 0xC0, 0x12, 0x03, 0xD4, 0x4E, 0x72, 0x0D, 0x50, 0x6D, + 0x3B, 0xA3, 0x3B, 0xA3, 0x99, 0x5E, 0x9D, 0xC8, 0xD9, 0x0C, + 0x85, 0xB3, 0xD9, 0x8A, 0xD9, 0x54, 0x26, 0xDB, 0x6D, 0xFA, + 0xAC, 0xBB, 0xFF, 0x25, 0x4C, 0xC4, 0xD1, 0x79, 0xF4, 0x71, + 0xD3, 0x86, 0x40, 0x18, 0x13, 0xB0, 0x63, 0xB5, 0x72, 0x4E, + 0x30, 0xC4, 0x97, 0x84, 0x86, 0x2D, 0x56, 0x2F, 0xD7, 0x15, + 0xF7, 0x7F, 0xC0, 0xAE, 0xF5, 0xFC, 0x5B, 0xE5, 0xFB, 0xA1, + 0xBA, 0xD3, 0x02, 0x03, 0x01, 0x00, 0x01, 0xA3, 0x82, 0x01, + 0x44, 0x30, 0x82, 0x01, 0x40, 0x30, 0x1D, 0x06, 0x03, 0x55, + 0x1D, 0x0E, 0x04, 0x16, 0x04, 0x14, 0x33, 0xD8, 0x45, 0x66, + 0xD7, 0x68, 0x87, 0x18, 0x7E, 0x54, 0x0D, 0x70, 0x27, 0x91, + 0xC7, 0x26, 0xD7, 0x85, 0x65, 0xC0, 0x30, 0x81, 0xD3, 0x06, + 0x03, 0x55, 0x1D, 0x23, 0x04, 0x81, 0xCB, 0x30, 0x81, 0xC8, + 0x80, 0x14, 0x33, 0xD8, 0x45, 0x66, 0xD7, 0x68, 0x87, 0x18, + 0x7E, 0x54, 0x0D, 0x70, 0x27, 0x91, 0xC7, 0x26, 0xD7, 0x85, + 0x65, 0xC0, 0xA1, 0x81, 0xA4, 0xA4, 0x81, 0xA1, 0x30, 0x81, + 0x9E, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, + 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, + 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, 0x61, + 0x6E, 0x61, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, + 0x07, 0x0C, 0x07, 0x42, 0x6F, 0x7A, 0x65, 0x6D, 0x61, 0x6E, + 0x31, 0x15, 0x30, 0x13, 0x06, 0x03, 0x55, 0x04, 0x0A, 0x0C, + 0x0C, 0x77, 0x6F, 0x6C, 0x66, 0x53, 0x53, 0x4C, 0x5F, 0x32, + 0x30, 0x34, 0x38, 0x31, 0x19, 0x30, 0x17, 0x06, 0x03, 0x55, + 0x04, 0x0B, 0x0C, 0x10, 0x50, 0x72, 0x6F, 0x67, 0x72, 0x61, + 0x6D, 0x6D, 0x69, 0x6E, 0x67, 0x2D, 0x32, 0x30, 0x34, 0x38, + 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0C, + 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, 0x73, + 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, 0x1D, + 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, + 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, + 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x82, + 0x09, 0x00, 0xF1, 0x5C, 0x99, 0x43, 0x66, 0x3D, 0x96, 0x04, + 0x30, 0x0C, 0x06, 0x03, 0x55, 0x1D, 0x13, 0x04, 0x05, 0x30, + 0x03, 0x01, 0x01, 0xFF, 0x30, 0x1C, 0x06, 0x03, 0x55, 0x1D, + 0x11, 0x04, 0x15, 0x30, 0x13, 0x82, 0x0B, 0x65, 0x78, 0x61, + 0x6D, 0x70, 0x6C, 0x65, 0x2E, 0x63, 0x6F, 0x6D, 0x87, 0x04, + 0x7F, 0x00, 0x00, 0x01, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, + 0x25, 0x04, 0x16, 0x30, 0x14, 0x06, 0x08, 0x2B, 0x06, 0x01, + 0x05, 0x05, 0x07, 0x03, 0x01, 0x06, 0x08, 0x2B, 0x06, 0x01, + 0x05, 0x05, 0x07, 0x03, 0x02, 0x30, 0x0D, 0x06, 0x09, 0x2A, + 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, 0x00, + 0x03, 0x82, 0x01, 0x01, 0x00, 0xBA, 0x2B, 0x48, 0xD1, 0xA8, + 0xE3, 0xC2, 0x84, 0x42, 0x96, 0xA1, 0x7C, 0xE5, 0xF1, 0x46, + 0xBA, 0x4C, 0xF7, 0x87, 0x57, 0xC7, 0x78, 0xC8, 0xC1, 0x32, + 0xC4, 0x69, 0xFF, 0x85, 0xBB, 0x5D, 0x6A, 0xDD, 0xC9, 0x87, + 0x7E, 0xFE, 0xBB, 0xF4, 0xFD, 0x15, 0x0A, 0x4C, 0x94, 0x95, + 0x80, 0x30, 0x90, 0x45, 0x03, 0xF8, 0x33, 0x87, 0xCA, 0x5F, + 0x74, 0x38, 0xA4, 0xD0, 0x5A, 0xC7, 0x65, 0x38, 0xC3, 0xB0, + 0xE8, 0x87, 0xB1, 0x49, 0x32, 0xB9, 0xAC, 0xE9, 0xFB, 0xD3, + 0x08, 0x1D, 0xA4, 0x51, 0x7B, 0xD7, 0xD9, 0x4B, 0x79, 0x35, + 0xA2, 0x3A, 0x0B, 0xE4, 0x0C, 0xA0, 0x02, 0x9C, 0xA1, 0x68, + 0xE1, 0x5D, 0x6C, 0x8E, 0x2E, 0x3A, 0x24, 0xDE, 0xBB, 0xD6, + 0x1C, 0xA7, 0xAC, 0x2E, 0xCD, 0x57, 0x44, 0x48, 0xF6, 0x72, + 0xE0, 0xC7, 0x5B, 0x93, 0xDC, 0x7D, 0x5B, 0x64, 0x0E, 0x17, + 0x84, 0x68, 0x2C, 0x95, 0x1D, 0x2C, 0x86, 0xD6, 0xB0, 0x74, + 0x67, 0x51, 0x6E, 0x7B, 0xF4, 0xD5, 0x61, 0x38, 0x51, 0xB3, + 0x18, 0xE3, 0x10, 0x16, 0x73, 0x4B, 0x36, 0x8A, 0x8A, 0x62, + 0x05, 0xF5, 0x56, 0x8A, 0xBE, 0x21, 0xE1, 0x78, 0x7D, 0xBF, + 0xAD, 0x45, 0xF9, 0x0B, 0xF5, 0xAF, 0xA0, 0x62, 0x01, 0xFD, + 0x3F, 0x49, 0xDF, 0x39, 0x3C, 0xFF, 0x46, 0xE8, 0x0A, 0xFE, + 0x5C, 0x6B, 0xBB, 0x41, 0xA5, 0x64, 0xF1, 0x5C, 0x9B, 0x51, + 0x4C, 0xBC, 0x6D, 0x9F, 0xA3, 0x20, 0xED, 0xE9, 0x48, 0xE1, + 0xA9, 0xBE, 0x08, 0x2D, 0x85, 0x42, 0x59, 0xD6, 0x43, 0x7D, + 0x47, 0x22, 0xA5, 0xFA, 0x1F, 0xA2, 0x58, 0x76, 0x0B, 0x70, + 0x1C, 0x1D, 0x59, 0x1D, 0xAA, 0xBE, 0x5D, 0x2D, 0x25, 0x7C, + 0xB1, 0x06, 0xB6, 0xC0, 0xAA, 0x28, 0xAA, 0x93, 0x7C, 0xD0, + 0xBD, 0x43, 0xAD, 0x91, 0x50, 0x1C, 0x7B, 0x4D, 0xF3, 0xE4, + 0xD7 }; static const int sizeof_client_cert_der_2048 = sizeof(client_cert_der_2048); @@ -1035,6 +1028,159 @@ static const unsigned char dh_key_der_2048[] = }; static const int sizeof_dh_key_der_2048 = sizeof(dh_key_der_2048); +/* ./certs/dh-pubkey-2048.der, 2048-bit */ +static const unsigned char dh_pub_key_der_2048[] = +{ + 0x30, 0x82, 0x02, 0x24, 0x30, 0x82, 0x01, 0x17, 0x06, 0x09, + 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x03, 0x01, 0x30, + 0x82, 0x01, 0x08, 0x02, 0x82, 0x01, 0x01, 0x00, 0xD3, 0xB2, + 0x99, 0x84, 0x5C, 0x0A, 0x4C, 0xE7, 0x37, 0xCC, 0xFC, 0x18, + 0x37, 0x01, 0x2F, 0x5D, 0xC1, 0x4C, 0xF4, 0x5C, 0xC9, 0x82, + 0x8D, 0xB7, 0xF3, 0xD4, 0xA9, 0x8A, 0x9D, 0x34, 0xD7, 0x76, + 0x57, 0xE5, 0xE5, 0xC3, 0xE5, 0x16, 0x85, 0xCA, 0x4D, 0xD6, + 0x5B, 0xC1, 0xF8, 0xCF, 0x89, 0x26, 0xD0, 0x38, 0x8A, 0xEE, + 0xF3, 0xCD, 0x33, 0xE5, 0x56, 0xBB, 0x90, 0x83, 0x9F, 0x97, + 0x8E, 0x71, 0xFB, 0x27, 0xE4, 0x35, 0x15, 0x45, 0x86, 0x09, + 0x71, 0xA8, 0x9A, 0xB9, 0x3E, 0x0F, 0x51, 0x8A, 0xC2, 0x75, + 0x51, 0x23, 0x12, 0xFB, 0x94, 0x31, 0x44, 0xBF, 0xCE, 0xF6, + 0xED, 0xA6, 0x3A, 0xB7, 0x92, 0xCE, 0x16, 0xA9, 0x14, 0xB3, + 0x88, 0xB7, 0x13, 0x81, 0x71, 0x83, 0x88, 0xCD, 0xB1, 0xA2, + 0x37, 0xE1, 0x59, 0x5C, 0xD0, 0xDC, 0xCA, 0x82, 0x87, 0xFA, + 0x43, 0x44, 0xDD, 0x78, 0x3F, 0xCA, 0x27, 0x7E, 0xE1, 0x6B, + 0x93, 0x19, 0x7C, 0xD9, 0xA6, 0x96, 0x47, 0x0D, 0x12, 0xC1, + 0x13, 0xD7, 0xB9, 0x0A, 0x40, 0xD9, 0x1F, 0xFF, 0xB8, 0xB4, + 0x00, 0xC8, 0xAA, 0x5E, 0xD2, 0x66, 0x4A, 0x05, 0x8E, 0x9E, + 0xF5, 0x34, 0xE7, 0xD7, 0x09, 0x7B, 0x15, 0x49, 0x1D, 0x76, + 0x31, 0xD6, 0x71, 0xEC, 0x13, 0x4E, 0x89, 0x8C, 0x09, 0x22, + 0xD8, 0xE7, 0xA3, 0xE9, 0x7D, 0x21, 0x51, 0x26, 0x6E, 0x9F, + 0x30, 0x8A, 0xBB, 0xBC, 0x74, 0xC1, 0xC3, 0x27, 0x6A, 0xCE, + 0xA3, 0x12, 0x60, 0x68, 0x01, 0xD2, 0x34, 0x07, 0x80, 0xCC, + 0x2D, 0x7F, 0x5C, 0xAE, 0xA2, 0x97, 0x40, 0xC8, 0x3C, 0xAC, + 0xDB, 0x6F, 0xFE, 0x6C, 0x6D, 0xD2, 0x06, 0x1C, 0x43, 0xA2, + 0xB2, 0x2B, 0x82, 0xB7, 0xD0, 0xAB, 0x3F, 0x2C, 0xE7, 0x9C, + 0x19, 0x16, 0xD1, 0x5E, 0x26, 0x86, 0xC7, 0x92, 0xF9, 0x16, + 0x0B, 0xFA, 0x66, 0x83, 0x02, 0x01, 0x02, 0x03, 0x82, 0x01, + 0x05, 0x00, 0x02, 0x82, 0x01, 0x00, 0x34, 0x41, 0xBF, 0xE9, + 0xF2, 0x11, 0xBF, 0x05, 0xDB, 0xB2, 0x72, 0xA8, 0x29, 0xCC, + 0xBD, 0x93, 0xEB, 0x14, 0x5D, 0x2C, 0x6B, 0x84, 0x4E, 0x96, + 0x12, 0xB3, 0x38, 0xBA, 0x8A, 0x46, 0x7C, 0x36, 0xCB, 0xE9, + 0x97, 0x70, 0xC5, 0xC3, 0x85, 0xB5, 0x51, 0xA5, 0x8B, 0x39, + 0xA8, 0xEA, 0x47, 0xD3, 0xD5, 0x11, 0xC0, 0x6D, 0xE3, 0xE3, + 0x9E, 0x00, 0x4C, 0x65, 0x41, 0x9B, 0xF6, 0xD0, 0xAC, 0x26, + 0x88, 0x01, 0xFC, 0x3C, 0x26, 0x5F, 0x67, 0xF7, 0x77, 0xD7, + 0xAC, 0xC5, 0xCA, 0xBB, 0xD8, 0x70, 0x58, 0x41, 0xF5, 0xF1, + 0x21, 0x3B, 0x15, 0xD5, 0x31, 0xF2, 0xC4, 0x8E, 0x0C, 0x38, + 0x01, 0x93, 0xD3, 0x64, 0x63, 0x57, 0xDC, 0x31, 0xE5, 0xFD, + 0x9C, 0x2B, 0xA6, 0xDE, 0x15, 0xB2, 0xC8, 0x8D, 0x65, 0x71, + 0x2E, 0xED, 0xF9, 0x1D, 0x2D, 0xA1, 0x17, 0xDD, 0xA3, 0xDA, + 0xF3, 0x10, 0x81, 0x40, 0xFA, 0x4F, 0x49, 0xB0, 0xDA, 0x16, + 0x64, 0xBE, 0x6F, 0xC5, 0x05, 0xCE, 0xC4, 0x4F, 0x67, 0x80, + 0xB3, 0x8A, 0x81, 0x17, 0xEB, 0xF9, 0x6F, 0x6D, 0x9F, 0x7F, + 0xDE, 0xEE, 0x08, 0xB8, 0xFA, 0x81, 0x68, 0x66, 0xD6, 0xC6, + 0x08, 0x50, 0xAB, 0xF0, 0x29, 0xDE, 0x6B, 0x1D, 0x50, 0x13, + 0x7F, 0x54, 0x31, 0x53, 0x89, 0x5F, 0x48, 0x72, 0x24, 0xD4, + 0xD2, 0x1D, 0x27, 0x7D, 0x74, 0xCF, 0x51, 0x17, 0xF0, 0xC5, + 0x6D, 0x3C, 0x3D, 0x6D, 0x0A, 0x8B, 0xDB, 0xEF, 0x02, 0xD8, + 0xC3, 0xCB, 0xCA, 0x21, 0xCA, 0xD6, 0x9C, 0x18, 0x9E, 0x92, + 0xBE, 0x6E, 0xE2, 0x16, 0x5E, 0x89, 0x9B, 0xAD, 0xD4, 0x04, + 0x5A, 0x24, 0x5A, 0x3F, 0x7C, 0x12, 0xAC, 0xB4, 0x71, 0x51, + 0x25, 0x58, 0x74, 0xE4, 0xB2, 0xD4, 0x45, 0xFC, 0x5F, 0xCD, + 0x81, 0x8F, 0xE7, 0x96, 0x18, 0xD9, 0xE0, 0x97, 0x08, 0x45, + 0x36, 0xC3 +}; +static const int sizeof_dh_pub_key_der_2048 = sizeof(dh_pub_key_der_2048); + +/* ./certs/dsa-pubkey-2048.der, 2048-bit */ +static const unsigned char dsa_pub_key_der_2048[] = +{ + 0x30, 0x82, 0x03, 0x47, 0x30, 0x82, 0x02, 0x39, 0x06, 0x07, + 0x2A, 0x86, 0x48, 0xCE, 0x38, 0x04, 0x01, 0x30, 0x82, 0x02, + 0x2C, 0x02, 0x82, 0x01, 0x01, 0x00, 0xEB, 0x7E, 0x2C, 0x97, + 0x36, 0x67, 0x0E, 0x73, 0x9A, 0xAC, 0xFD, 0xB1, 0x19, 0x03, + 0x52, 0x61, 0x25, 0x12, 0xB2, 0x37, 0x3D, 0xEA, 0xCA, 0x80, + 0x07, 0x5D, 0x2D, 0x33, 0xA2, 0x4E, 0x6B, 0xB7, 0x62, 0xF8, + 0x87, 0x4D, 0x4B, 0x20, 0xDA, 0xEA, 0x6A, 0x96, 0x13, 0xB7, + 0xB9, 0x49, 0xC0, 0x86, 0x14, 0x71, 0xCD, 0x8C, 0x60, 0x61, + 0x94, 0x71, 0x89, 0x95, 0x1A, 0x0F, 0x38, 0xCC, 0x9C, 0x1F, + 0x20, 0xE5, 0xD0, 0x65, 0x75, 0xCD, 0xFE, 0x24, 0x29, 0xE6, + 0x60, 0x97, 0x74, 0xEC, 0x4C, 0x42, 0xE8, 0xBA, 0xE9, 0xC2, + 0xF7, 0xCB, 0x9B, 0xEA, 0x55, 0xD8, 0x40, 0x50, 0x2E, 0xCF, + 0xCD, 0x41, 0x01, 0xA9, 0xE5, 0x29, 0xCA, 0xC3, 0x36, 0x58, + 0x7E, 0x2E, 0x11, 0x96, 0x87, 0xC6, 0xFA, 0xE1, 0x27, 0x53, + 0x3D, 0x60, 0x93, 0x7B, 0xAD, 0xEE, 0xE7, 0xD4, 0xDC, 0xD6, + 0x03, 0x16, 0x92, 0xD4, 0x51, 0x0C, 0xFD, 0xA9, 0x01, 0x3E, + 0x6E, 0x27, 0x67, 0x6E, 0x9F, 0x29, 0x63, 0xFD, 0x51, 0x82, + 0x79, 0x83, 0x2B, 0xCB, 0x12, 0xCD, 0x50, 0x92, 0xAC, 0x16, + 0xC9, 0xEA, 0x9E, 0x68, 0x9E, 0x4B, 0xE1, 0x63, 0xB4, 0x80, + 0xE4, 0xDF, 0x75, 0xBC, 0x27, 0xD1, 0x76, 0x03, 0x48, 0x98, + 0x1D, 0xE3, 0x29, 0x8A, 0x99, 0x59, 0xF3, 0x75, 0x5B, 0xD9, + 0xAC, 0x59, 0x11, 0x52, 0x2F, 0xE0, 0x91, 0x55, 0xB0, 0xF2, + 0x5F, 0x0A, 0xF8, 0xD2, 0x7A, 0xDD, 0x8D, 0xE9, 0x92, 0xE2, + 0xF3, 0xF7, 0x4A, 0xB1, 0x50, 0xD7, 0xFE, 0x07, 0x8D, 0x27, + 0x7D, 0x08, 0x6F, 0x08, 0x7E, 0x25, 0x19, 0x0D, 0xDE, 0x11, + 0xD1, 0x63, 0x31, 0x84, 0x18, 0x25, 0xBE, 0x7D, 0x64, 0x77, + 0xDB, 0x4A, 0x20, 0xC5, 0x51, 0x75, 0xD8, 0xB1, 0x1B, 0xDF, + 0x91, 0x7F, 0xFC, 0x74, 0xBA, 0x9D, 0xD1, 0xFA, 0x8D, 0xBD, + 0x59, 0xFD, 0x02, 0x21, 0x00, 0xFA, 0xF7, 0x62, 0x9A, 0x62, + 0x19, 0x64, 0x6D, 0xC1, 0xF3, 0xC0, 0x9B, 0xAC, 0x90, 0x28, + 0xEA, 0xA1, 0x83, 0xF9, 0xC8, 0xED, 0x31, 0xEE, 0x33, 0x1D, + 0x35, 0x22, 0x00, 0x2B, 0x12, 0x84, 0xFF, 0x02, 0x82, 0x01, + 0x00, 0x73, 0xC9, 0xED, 0x1F, 0xBC, 0xC7, 0xC4, 0xEF, 0x46, + 0x03, 0xD1, 0x72, 0xC3, 0xE5, 0x29, 0xB0, 0x9A, 0x95, 0x13, + 0x5B, 0x4E, 0x59, 0x57, 0x0F, 0x80, 0xEB, 0x74, 0x87, 0x11, + 0x1B, 0xC8, 0x11, 0xB6, 0x97, 0x4C, 0x48, 0x50, 0x3A, 0xB8, + 0x2C, 0x28, 0xF3, 0xB0, 0x9C, 0x7C, 0x3D, 0xFF, 0x8B, 0x43, + 0x43, 0x30, 0x85, 0x5F, 0x97, 0xD2, 0x68, 0x85, 0x35, 0x2E, + 0xD4, 0x61, 0xF6, 0x3E, 0x05, 0xEC, 0xCD, 0x60, 0x13, 0xE2, + 0x16, 0x02, 0x7C, 0x8B, 0x21, 0xCE, 0x36, 0x71, 0xC4, 0xED, + 0x0B, 0x47, 0x76, 0x83, 0x23, 0x2F, 0x98, 0xA4, 0x84, 0x98, + 0x9C, 0xFB, 0xD0, 0xA8, 0xD9, 0xB9, 0xE3, 0xD7, 0x32, 0xD9, + 0xB5, 0x9E, 0x82, 0x93, 0xD0, 0x55, 0x74, 0x5F, 0xDA, 0x87, + 0x91, 0x90, 0x0F, 0x85, 0x74, 0x1A, 0x32, 0x76, 0x4F, 0xCC, + 0x2A, 0x18, 0x11, 0x5B, 0xB4, 0x78, 0x93, 0xB6, 0xE5, 0xF0, + 0xC6, 0x71, 0xE8, 0xD7, 0x31, 0x19, 0x91, 0x27, 0x71, 0x5A, + 0x02, 0x1A, 0x1A, 0x3A, 0x55, 0x95, 0xFF, 0xF8, 0xED, 0xD3, + 0xE1, 0xAE, 0x8A, 0x1D, 0xFF, 0x53, 0x63, 0x79, 0x13, 0xA1, + 0xAD, 0x0A, 0x68, 0x67, 0x43, 0xB2, 0x5B, 0xD5, 0x36, 0xD4, + 0x84, 0xD0, 0xCD, 0x34, 0x82, 0x84, 0xA4, 0x89, 0xAE, 0xA1, + 0x66, 0x57, 0x89, 0x6F, 0xDC, 0x0C, 0x3B, 0x48, 0x14, 0x7C, + 0xCC, 0x63, 0x7C, 0x83, 0x93, 0x55, 0x7D, 0xB4, 0xF3, 0x34, + 0x66, 0x72, 0x85, 0xF5, 0x8D, 0xEF, 0x90, 0x1A, 0x66, 0xF8, + 0x3B, 0xC6, 0xA4, 0x59, 0xB8, 0x25, 0x4E, 0x5D, 0x84, 0xED, + 0x7C, 0x1C, 0xDD, 0x35, 0xA6, 0xBA, 0xED, 0x3B, 0xD6, 0x49, + 0xE6, 0x5A, 0xD1, 0xF8, 0xEA, 0x96, 0x75, 0x92, 0xCF, 0x05, + 0x52, 0x05, 0x3D, 0x78, 0x09, 0xCF, 0xCD, 0xE2, 0x1A, 0x99, + 0xEB, 0x5E, 0xFA, 0x27, 0x73, 0x89, 0x15, 0x03, 0x82, 0x01, + 0x06, 0x00, 0x02, 0x82, 0x01, 0x01, 0x00, 0xC2, 0x35, 0x2D, + 0xEC, 0x83, 0x83, 0x6C, 0x73, 0x13, 0x9E, 0x52, 0x7C, 0x74, + 0xC8, 0x7B, 0xEE, 0xDF, 0x39, 0xC0, 0x33, 0xCD, 0x9F, 0xB2, + 0x22, 0x64, 0x9F, 0xC5, 0xE9, 0xFF, 0xF7, 0x09, 0x47, 0x79, + 0x13, 0x96, 0x77, 0x25, 0xF3, 0x5D, 0xAA, 0x9F, 0x97, 0x67, + 0x62, 0xBC, 0x94, 0x1D, 0xAE, 0x22, 0x7E, 0x08, 0x03, 0xBD, + 0x7E, 0x34, 0x29, 0xCB, 0x62, 0xB7, 0x82, 0x1D, 0xE2, 0xFA, + 0x05, 0xC6, 0xC1, 0x68, 0xE7, 0x01, 0x27, 0x63, 0x51, 0x3E, + 0x37, 0x59, 0x42, 0x92, 0x4F, 0x99, 0x60, 0xFD, 0x63, 0x94, + 0xB7, 0xD0, 0xEE, 0xC1, 0xA0, 0xA5, 0x01, 0x74, 0x4D, 0x0E, + 0x14, 0xB2, 0xE2, 0x2C, 0xE7, 0x82, 0x0A, 0x23, 0xC7, 0x39, + 0x45, 0x40, 0xE9, 0xE9, 0x9D, 0x36, 0xE0, 0x52, 0x03, 0x99, + 0xDC, 0x87, 0x7D, 0x6A, 0x90, 0xE4, 0xDD, 0xA9, 0xC2, 0x57, + 0x90, 0xD6, 0xCA, 0xB4, 0x15, 0x80, 0xEE, 0x00, 0xCB, 0x2A, + 0xC9, 0x59, 0x4C, 0xA7, 0x7D, 0x33, 0x0A, 0x3E, 0x4A, 0x76, + 0xEA, 0x27, 0x89, 0xD8, 0x1A, 0xEA, 0x7E, 0xDB, 0x13, 0x92, + 0x93, 0x6A, 0x57, 0x9B, 0x33, 0xFD, 0xCE, 0x09, 0x0A, 0xB0, + 0x35, 0x24, 0xE4, 0x7D, 0xD8, 0x9D, 0xFF, 0x80, 0x65, 0x0F, + 0x61, 0xF7, 0xF7, 0xED, 0x8B, 0xD5, 0x8F, 0xBF, 0xB3, 0x22, + 0x20, 0x39, 0x89, 0x83, 0xB8, 0x83, 0x96, 0x32, 0x20, 0xAD, + 0xA1, 0x5D, 0x73, 0x8F, 0xE3, 0x27, 0xD9, 0x5D, 0xDB, 0x00, + 0x27, 0xF2, 0xBE, 0x89, 0x13, 0xE2, 0x97, 0x79, 0x10, 0x27, + 0x3D, 0xD8, 0x05, 0x96, 0x59, 0x6E, 0xA0, 0xC1, 0x6F, 0x99, + 0x4F, 0x28, 0xFA, 0xA6, 0x0B, 0x5C, 0x16, 0xEE, 0xB0, 0x98, + 0x8A, 0x06, 0x4A, 0xB0, 0x02, 0x2A, 0x6D, 0xCC, 0xE2, 0xC8, + 0x11, 0xF9, 0x1B, 0xF1, 0x3C, 0x68, 0xDF, 0xC2, 0xF4, 0x98, + 0x5F, 0x6C, 0xC8 +}; +static const int sizeof_dsa_pub_key_der_2048 = sizeof(dsa_pub_key_der_2048); + /* ./certs/dsa2048.der, 2048-bit */ static const unsigned char dsa_key_der_2048[] = { @@ -1380,82 +1526,10 @@ static const int sizeof_ca_key_der_2048 = sizeof(ca_key_der_2048); /* ./certs/ca-cert.der, 2048-bit */ static const unsigned char ca_cert_der_2048[] = { - 0x30, 0x82, 0x04, 0xFF, 0x30, 0x82, 0x03, 0xE7, 0xA0, 0x03, - 0x02, 0x01, 0x02, 0x02, 0x14, 0x5E, 0xBA, 0xA4, 0xF4, 0xB1, - 0xF7, 0x48, 0x25, 0xE3, 0x5F, 0x9B, 0xDA, 0xA1, 0x13, 0xED, - 0xD5, 0x2B, 0x03, 0x67, 0x15, 0x30, 0x0D, 0x06, 0x09, 0x2A, - 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, 0x00, - 0x30, 0x81, 0x94, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, - 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, - 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, - 0x74, 0x61, 0x6E, 0x61, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, - 0x55, 0x04, 0x07, 0x0C, 0x07, 0x42, 0x6F, 0x7A, 0x65, 0x6D, - 0x61, 0x6E, 0x31, 0x11, 0x30, 0x0F, 0x06, 0x03, 0x55, 0x04, - 0x0A, 0x0C, 0x08, 0x53, 0x61, 0x77, 0x74, 0x6F, 0x6F, 0x74, - 0x68, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55, 0x04, 0x0B, - 0x0C, 0x0A, 0x43, 0x6F, 0x6E, 0x73, 0x75, 0x6C, 0x74, 0x69, - 0x6E, 0x67, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, - 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, - 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, - 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, - 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, - 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, - 0x6D, 0x30, 0x1E, 0x17, 0x0D, 0x32, 0x30, 0x30, 0x36, 0x31, - 0x39, 0x31, 0x33, 0x32, 0x33, 0x34, 0x31, 0x5A, 0x17, 0x0D, - 0x32, 0x33, 0x30, 0x33, 0x31, 0x36, 0x31, 0x33, 0x32, 0x33, - 0x34, 0x31, 0x5A, 0x30, 0x81, 0x94, 0x31, 0x0B, 0x30, 0x09, - 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, - 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, - 0x4D, 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, 0x31, 0x10, 0x30, - 0x0E, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, 0x07, 0x42, 0x6F, - 0x7A, 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x11, 0x30, 0x0F, 0x06, - 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x08, 0x53, 0x61, 0x77, 0x74, - 0x6F, 0x6F, 0x74, 0x68, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, - 0x55, 0x04, 0x0B, 0x0C, 0x0A, 0x43, 0x6F, 0x6E, 0x73, 0x75, - 0x6C, 0x74, 0x69, 0x6E, 0x67, 0x31, 0x18, 0x30, 0x16, 0x06, - 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, - 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, - 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, - 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, - 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, - 0x2E, 0x63, 0x6F, 0x6D, 0x30, 0x82, 0x01, 0x22, 0x30, 0x0D, - 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, - 0x01, 0x05, 0x00, 0x03, 0x82, 0x01, 0x0F, 0x00, 0x30, 0x82, - 0x01, 0x0A, 0x02, 0x82, 0x01, 0x01, 0x00, 0xBF, 0x0C, 0xCA, - 0x2D, 0x14, 0xB2, 0x1E, 0x84, 0x42, 0x5B, 0xCD, 0x38, 0x1F, - 0x4A, 0xF2, 0x4D, 0x75, 0x10, 0xF1, 0xB6, 0x35, 0x9F, 0xDF, - 0xCA, 0x7D, 0x03, 0x98, 0xD3, 0xAC, 0xDE, 0x03, 0x66, 0xEE, - 0x2A, 0xF1, 0xD8, 0xB0, 0x7D, 0x6E, 0x07, 0x54, 0x0B, 0x10, - 0x98, 0x21, 0x4D, 0x80, 0xCB, 0x12, 0x20, 0xE7, 0xCC, 0x4F, - 0xDE, 0x45, 0x7D, 0xC9, 0x72, 0x77, 0x32, 0xEA, 0xCA, 0x90, - 0xBB, 0x69, 0x52, 0x10, 0x03, 0x2F, 0xA8, 0xF3, 0x95, 0xC5, - 0xF1, 0x8B, 0x62, 0x56, 0x1B, 0xEF, 0x67, 0x6F, 0xA4, 0x10, - 0x41, 0x95, 0xAD, 0x0A, 0x9B, 0xE3, 0xA5, 0xC0, 0xB0, 0xD2, - 0x70, 0x76, 0x50, 0x30, 0x5B, 0xA8, 0xE8, 0x08, 0x2C, 0x7C, - 0xED, 0xA7, 0xA2, 0x7A, 0x8D, 0x38, 0x29, 0x1C, 0xAC, 0xC7, - 0xED, 0xF2, 0x7C, 0x95, 0xB0, 0x95, 0x82, 0x7D, 0x49, 0x5C, - 0x38, 0xCD, 0x77, 0x25, 0xEF, 0xBD, 0x80, 0x75, 0x53, 0x94, - 0x3C, 0x3D, 0xCA, 0x63, 0x5B, 0x9F, 0x15, 0xB5, 0xD3, 0x1D, - 0x13, 0x2F, 0x19, 0xD1, 0x3C, 0xDB, 0x76, 0x3A, 0xCC, 0xB8, - 0x7D, 0xC9, 0xE5, 0xC2, 0xD7, 0xDA, 0x40, 0x6F, 0xD8, 0x21, - 0xDC, 0x73, 0x1B, 0x42, 0x2D, 0x53, 0x9C, 0xFE, 0x1A, 0xFC, - 0x7D, 0xAB, 0x7A, 0x36, 0x3F, 0x98, 0xDE, 0x84, 0x7C, 0x05, - 0x67, 0xCE, 0x6A, 0x14, 0x38, 0x87, 0xA9, 0xF1, 0x8C, 0xB5, - 0x68, 0xCB, 0x68, 0x7F, 0x71, 0x20, 0x2B, 0xF5, 0xA0, 0x63, - 0xF5, 0x56, 0x2F, 0xA3, 0x26, 0xD2, 0xB7, 0x6F, 0xB1, 0x5A, - 0x17, 0xD7, 0x38, 0x99, 0x08, 0xFE, 0x93, 0x58, 0x6F, 0xFE, - 0xC3, 0x13, 0x49, 0x08, 0x16, 0x0B, 0xA7, 0x4D, 0x67, 0x00, - 0x52, 0x31, 0x67, 0x23, 0x4E, 0x98, 0xED, 0x51, 0x45, 0x1D, - 0xB9, 0x04, 0xD9, 0x0B, 0xEC, 0xD8, 0x28, 0xB3, 0x4B, 0xBD, - 0xED, 0x36, 0x79, 0x02, 0x03, 0x01, 0x00, 0x01, 0xA3, 0x82, - 0x01, 0x45, 0x30, 0x82, 0x01, 0x41, 0x30, 0x1D, 0x06, 0x03, - 0x55, 0x1D, 0x0E, 0x04, 0x16, 0x04, 0x14, 0x27, 0x8E, 0x67, - 0x11, 0x74, 0xC3, 0x26, 0x1D, 0x3F, 0xED, 0x33, 0x63, 0xB3, - 0xA4, 0xD8, 0x1D, 0x30, 0xE5, 0xE8, 0xD5, 0x30, 0x81, 0xD4, - 0x06, 0x03, 0x55, 0x1D, 0x23, 0x04, 0x81, 0xCC, 0x30, 0x81, - 0xC9, 0x80, 0x14, 0x27, 0x8E, 0x67, 0x11, 0x74, 0xC3, 0x26, - 0x1D, 0x3F, 0xED, 0x33, 0x63, 0xB3, 0xA4, 0xD8, 0x1D, 0x30, - 0xE5, 0xE8, 0xD5, 0xA1, 0x81, 0x9A, 0xA4, 0x81, 0x97, 0x30, + 0x30, 0x82, 0x04, 0xE9, 0x30, 0x82, 0x03, 0xD1, 0xA0, 0x03, + 0x02, 0x01, 0x02, 0x02, 0x09, 0x00, 0xAA, 0xD3, 0x3F, 0xAC, + 0x18, 0x0A, 0x37, 0x4D, 0x30, 0x0D, 0x06, 0x09, 0x2A, 0x86, + 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, 0x00, 0x30, 0x81, 0x94, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, @@ -1471,83 +1545,152 @@ static const unsigned char ca_cert_der_2048[] = 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, - 0x82, 0x14, 0x5E, 0xBA, 0xA4, 0xF4, 0xB1, 0xF7, 0x48, 0x25, - 0xE3, 0x5F, 0x9B, 0xDA, 0xA1, 0x13, 0xED, 0xD5, 0x2B, 0x03, - 0x67, 0x15, 0x30, 0x0C, 0x06, 0x03, 0x55, 0x1D, 0x13, 0x04, - 0x05, 0x30, 0x03, 0x01, 0x01, 0xFF, 0x30, 0x1C, 0x06, 0x03, - 0x55, 0x1D, 0x11, 0x04, 0x15, 0x30, 0x13, 0x82, 0x0B, 0x65, - 0x78, 0x61, 0x6D, 0x70, 0x6C, 0x65, 0x2E, 0x63, 0x6F, 0x6D, - 0x87, 0x04, 0x7F, 0x00, 0x00, 0x01, 0x30, 0x1D, 0x06, 0x03, - 0x55, 0x1D, 0x25, 0x04, 0x16, 0x30, 0x14, 0x06, 0x08, 0x2B, - 0x06, 0x01, 0x05, 0x05, 0x07, 0x03, 0x01, 0x06, 0x08, 0x2B, - 0x06, 0x01, 0x05, 0x05, 0x07, 0x03, 0x02, 0x30, 0x0D, 0x06, - 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, - 0x05, 0x00, 0x03, 0x82, 0x01, 0x01, 0x00, 0xB9, 0xED, 0x94, - 0x3E, 0x00, 0x73, 0x2D, 0xA5, 0xD1, 0x04, 0xB3, 0xFB, 0xDC, - 0xF0, 0xB7, 0x0D, 0x3D, 0xAD, 0x96, 0x74, 0x4C, 0x92, 0x67, - 0xAD, 0x6D, 0x7C, 0xE2, 0x99, 0x6A, 0x33, 0xCA, 0xB2, 0x0F, - 0x04, 0x5A, 0xA5, 0x67, 0xF8, 0xE3, 0x0B, 0x3D, 0xF5, 0xD0, - 0x5B, 0x1E, 0x20, 0x52, 0x12, 0x92, 0x28, 0xEA, 0x31, 0xA3, - 0x51, 0x9E, 0x8B, 0xD2, 0x39, 0xE4, 0x25, 0xEA, 0x61, 0x61, - 0x41, 0x16, 0x2D, 0x54, 0x50, 0xD3, 0xFB, 0xD0, 0x34, 0x00, - 0x10, 0xF1, 0x7B, 0xBC, 0xF0, 0x08, 0xA7, 0xF5, 0x27, 0x5E, - 0x7E, 0x40, 0x9D, 0x99, 0xB0, 0xD3, 0x31, 0x11, 0xC3, 0x9D, - 0xA9, 0x51, 0xA0, 0x17, 0xCF, 0x83, 0x2C, 0x55, 0x84, 0xE0, - 0xD5, 0x92, 0xA0, 0x05, 0x3A, 0x9F, 0xB8, 0x75, 0xF8, 0x1B, - 0xE5, 0xF7, 0xA4, 0x6C, 0xE9, 0xAA, 0x25, 0x8B, 0x19, 0x93, - 0x46, 0x1F, 0x3F, 0x33, 0xAF, 0x47, 0x29, 0xCF, 0x7B, 0x8B, - 0x59, 0x27, 0xEB, 0xD7, 0x4F, 0xCB, 0x33, 0x19, 0xFA, 0x5F, - 0xEE, 0xD8, 0x13, 0xE9, 0x0C, 0x07, 0xAD, 0x3B, 0xC0, 0x7F, - 0x10, 0xD7, 0xE4, 0xED, 0xE8, 0xDB, 0x16, 0xE1, 0x1F, 0xA4, - 0x7F, 0x16, 0x3C, 0xBD, 0xD7, 0x11, 0xF2, 0xD4, 0x3A, 0xA9, - 0x9B, 0x95, 0xE1, 0x39, 0x51, 0x99, 0xEB, 0x5B, 0x65, 0x46, - 0xEF, 0x63, 0x84, 0x73, 0x95, 0x23, 0xB8, 0xBF, 0xB5, 0xF6, - 0x4D, 0x12, 0x71, 0xF7, 0xFF, 0x33, 0xAA, 0x4A, 0x8C, 0x65, - 0x73, 0x73, 0x89, 0x69, 0xDF, 0xA6, 0xDC, 0xA4, 0x91, 0xFF, - 0xAE, 0xC7, 0x28, 0x93, 0xB5, 0x1A, 0xDE, 0xA9, 0x8F, 0x2B, - 0x30, 0x85, 0x83, 0x8B, 0x99, 0x82, 0xCA, 0xB3, 0x7C, 0x11, - 0x10, 0x88, 0x9D, 0x8E, 0x6C, 0x2C, 0xF3, 0x05, 0x6F, 0xCB, - 0x80, 0x85, 0x16, 0xB7, 0xED, 0xE4, 0x68, 0xFB, 0xB6, 0xB6, - 0x31, 0x8A, 0x7D + 0x30, 0x1E, 0x17, 0x0D, 0x32, 0x31, 0x30, 0x32, 0x31, 0x30, + 0x31, 0x39, 0x34, 0x39, 0x35, 0x32, 0x5A, 0x17, 0x0D, 0x32, + 0x33, 0x31, 0x31, 0x30, 0x37, 0x31, 0x39, 0x34, 0x39, 0x35, + 0x32, 0x5A, 0x30, 0x81, 0x94, 0x31, 0x0B, 0x30, 0x09, 0x06, + 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, + 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, + 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, 0x31, 0x10, 0x30, 0x0E, + 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, 0x07, 0x42, 0x6F, 0x7A, + 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x11, 0x30, 0x0F, 0x06, 0x03, + 0x55, 0x04, 0x0A, 0x0C, 0x08, 0x53, 0x61, 0x77, 0x74, 0x6F, + 0x6F, 0x74, 0x68, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55, + 0x04, 0x0B, 0x0C, 0x0A, 0x43, 0x6F, 0x6E, 0x73, 0x75, 0x6C, + 0x74, 0x69, 0x6E, 0x67, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, + 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, + 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, + 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, + 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, + 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, + 0x63, 0x6F, 0x6D, 0x30, 0x82, 0x01, 0x22, 0x30, 0x0D, 0x06, + 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x01, + 0x05, 0x00, 0x03, 0x82, 0x01, 0x0F, 0x00, 0x30, 0x82, 0x01, + 0x0A, 0x02, 0x82, 0x01, 0x01, 0x00, 0xBF, 0x0C, 0xCA, 0x2D, + 0x14, 0xB2, 0x1E, 0x84, 0x42, 0x5B, 0xCD, 0x38, 0x1F, 0x4A, + 0xF2, 0x4D, 0x75, 0x10, 0xF1, 0xB6, 0x35, 0x9F, 0xDF, 0xCA, + 0x7D, 0x03, 0x98, 0xD3, 0xAC, 0xDE, 0x03, 0x66, 0xEE, 0x2A, + 0xF1, 0xD8, 0xB0, 0x7D, 0x6E, 0x07, 0x54, 0x0B, 0x10, 0x98, + 0x21, 0x4D, 0x80, 0xCB, 0x12, 0x20, 0xE7, 0xCC, 0x4F, 0xDE, + 0x45, 0x7D, 0xC9, 0x72, 0x77, 0x32, 0xEA, 0xCA, 0x90, 0xBB, + 0x69, 0x52, 0x10, 0x03, 0x2F, 0xA8, 0xF3, 0x95, 0xC5, 0xF1, + 0x8B, 0x62, 0x56, 0x1B, 0xEF, 0x67, 0x6F, 0xA4, 0x10, 0x41, + 0x95, 0xAD, 0x0A, 0x9B, 0xE3, 0xA5, 0xC0, 0xB0, 0xD2, 0x70, + 0x76, 0x50, 0x30, 0x5B, 0xA8, 0xE8, 0x08, 0x2C, 0x7C, 0xED, + 0xA7, 0xA2, 0x7A, 0x8D, 0x38, 0x29, 0x1C, 0xAC, 0xC7, 0xED, + 0xF2, 0x7C, 0x95, 0xB0, 0x95, 0x82, 0x7D, 0x49, 0x5C, 0x38, + 0xCD, 0x77, 0x25, 0xEF, 0xBD, 0x80, 0x75, 0x53, 0x94, 0x3C, + 0x3D, 0xCA, 0x63, 0x5B, 0x9F, 0x15, 0xB5, 0xD3, 0x1D, 0x13, + 0x2F, 0x19, 0xD1, 0x3C, 0xDB, 0x76, 0x3A, 0xCC, 0xB8, 0x7D, + 0xC9, 0xE5, 0xC2, 0xD7, 0xDA, 0x40, 0x6F, 0xD8, 0x21, 0xDC, + 0x73, 0x1B, 0x42, 0x2D, 0x53, 0x9C, 0xFE, 0x1A, 0xFC, 0x7D, + 0xAB, 0x7A, 0x36, 0x3F, 0x98, 0xDE, 0x84, 0x7C, 0x05, 0x67, + 0xCE, 0x6A, 0x14, 0x38, 0x87, 0xA9, 0xF1, 0x8C, 0xB5, 0x68, + 0xCB, 0x68, 0x7F, 0x71, 0x20, 0x2B, 0xF5, 0xA0, 0x63, 0xF5, + 0x56, 0x2F, 0xA3, 0x26, 0xD2, 0xB7, 0x6F, 0xB1, 0x5A, 0x17, + 0xD7, 0x38, 0x99, 0x08, 0xFE, 0x93, 0x58, 0x6F, 0xFE, 0xC3, + 0x13, 0x49, 0x08, 0x16, 0x0B, 0xA7, 0x4D, 0x67, 0x00, 0x52, + 0x31, 0x67, 0x23, 0x4E, 0x98, 0xED, 0x51, 0x45, 0x1D, 0xB9, + 0x04, 0xD9, 0x0B, 0xEC, 0xD8, 0x28, 0xB3, 0x4B, 0xBD, 0xED, + 0x36, 0x79, 0x02, 0x03, 0x01, 0x00, 0x01, 0xA3, 0x82, 0x01, + 0x3A, 0x30, 0x82, 0x01, 0x36, 0x30, 0x1D, 0x06, 0x03, 0x55, + 0x1D, 0x0E, 0x04, 0x16, 0x04, 0x14, 0x27, 0x8E, 0x67, 0x11, + 0x74, 0xC3, 0x26, 0x1D, 0x3F, 0xED, 0x33, 0x63, 0xB3, 0xA4, + 0xD8, 0x1D, 0x30, 0xE5, 0xE8, 0xD5, 0x30, 0x81, 0xC9, 0x06, + 0x03, 0x55, 0x1D, 0x23, 0x04, 0x81, 0xC1, 0x30, 0x81, 0xBE, + 0x80, 0x14, 0x27, 0x8E, 0x67, 0x11, 0x74, 0xC3, 0x26, 0x1D, + 0x3F, 0xED, 0x33, 0x63, 0xB3, 0xA4, 0xD8, 0x1D, 0x30, 0xE5, + 0xE8, 0xD5, 0xA1, 0x81, 0x9A, 0xA4, 0x81, 0x97, 0x30, 0x81, + 0x94, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, + 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, + 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, 0x61, + 0x6E, 0x61, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, + 0x07, 0x0C, 0x07, 0x42, 0x6F, 0x7A, 0x65, 0x6D, 0x61, 0x6E, + 0x31, 0x11, 0x30, 0x0F, 0x06, 0x03, 0x55, 0x04, 0x0A, 0x0C, + 0x08, 0x53, 0x61, 0x77, 0x74, 0x6F, 0x6F, 0x74, 0x68, 0x31, + 0x13, 0x30, 0x11, 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x0A, + 0x43, 0x6F, 0x6E, 0x73, 0x75, 0x6C, 0x74, 0x69, 0x6E, 0x67, + 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0C, + 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, 0x73, + 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, 0x1D, + 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, + 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, + 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x82, + 0x09, 0x00, 0xAA, 0xD3, 0x3F, 0xAC, 0x18, 0x0A, 0x37, 0x4D, + 0x30, 0x0C, 0x06, 0x03, 0x55, 0x1D, 0x13, 0x04, 0x05, 0x30, + 0x03, 0x01, 0x01, 0xFF, 0x30, 0x1C, 0x06, 0x03, 0x55, 0x1D, + 0x11, 0x04, 0x15, 0x30, 0x13, 0x82, 0x0B, 0x65, 0x78, 0x61, + 0x6D, 0x70, 0x6C, 0x65, 0x2E, 0x63, 0x6F, 0x6D, 0x87, 0x04, + 0x7F, 0x00, 0x00, 0x01, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, + 0x25, 0x04, 0x16, 0x30, 0x14, 0x06, 0x08, 0x2B, 0x06, 0x01, + 0x05, 0x05, 0x07, 0x03, 0x01, 0x06, 0x08, 0x2B, 0x06, 0x01, + 0x05, 0x05, 0x07, 0x03, 0x02, 0x30, 0x0D, 0x06, 0x09, 0x2A, + 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, 0x00, + 0x03, 0x82, 0x01, 0x01, 0x00, 0x62, 0x98, 0xC8, 0x58, 0xCF, + 0x56, 0x03, 0x86, 0x5B, 0x1B, 0x71, 0x49, 0x7D, 0x05, 0x03, + 0x5D, 0xE0, 0x08, 0x86, 0xAD, 0xDB, 0x4A, 0xDE, 0xAB, 0x22, + 0x96, 0xA8, 0xC3, 0x59, 0x68, 0xC1, 0x37, 0x90, 0x40, 0xDF, + 0xBD, 0x89, 0xD0, 0xBC, 0xDA, 0x8E, 0xEF, 0x87, 0xB2, 0xC2, + 0x62, 0x52, 0xE1, 0x1A, 0x29, 0x17, 0x6A, 0x96, 0x99, 0xC8, + 0x4E, 0xD8, 0x32, 0xFE, 0xB8, 0xD1, 0x5C, 0x3B, 0x0A, 0xC2, + 0x3C, 0x5F, 0xA1, 0x1E, 0x98, 0x7F, 0xCE, 0x89, 0x26, 0x21, + 0x1F, 0x64, 0x9C, 0x15, 0x7A, 0x9C, 0xEF, 0xFB, 0x1D, 0x85, + 0x6A, 0xFA, 0x98, 0xCE, 0xA8, 0xA9, 0xAB, 0xC3, 0xA2, 0xC0, + 0xEB, 0x87, 0xED, 0xBC, 0x21, 0xDF, 0xF3, 0x07, 0x5B, 0xAE, + 0xFD, 0x40, 0xD4, 0xAE, 0x20, 0xD0, 0x76, 0x8A, 0x31, 0x0A, + 0xA2, 0x62, 0x7C, 0x61, 0x0D, 0xCE, 0x5D, 0x9A, 0x1E, 0xE4, + 0x20, 0x88, 0x51, 0x49, 0xFB, 0x77, 0xA9, 0xCD, 0x4D, 0xC6, + 0xBF, 0x54, 0x99, 0x33, 0xEF, 0x4B, 0xA0, 0x73, 0x70, 0x6D, + 0x2E, 0xD9, 0x3D, 0x08, 0xF6, 0x12, 0x39, 0x31, 0x68, 0xC6, + 0x61, 0x5C, 0x41, 0xB5, 0x1B, 0xF4, 0x38, 0x7D, 0xFC, 0xBE, + 0x73, 0x66, 0x2D, 0xF7, 0xCA, 0x5B, 0x2C, 0x5B, 0x31, 0xAA, + 0xCF, 0xF6, 0x7F, 0x30, 0xE4, 0x12, 0x2C, 0x8E, 0xD6, 0x38, + 0x51, 0xE6, 0x45, 0xEE, 0xD5, 0xDA, 0xC3, 0x83, 0xD6, 0xED, + 0x5E, 0xEC, 0xD6, 0xB6, 0x14, 0xB3, 0x93, 0x59, 0xE1, 0x55, + 0x4A, 0x7F, 0x04, 0xDF, 0xCE, 0x65, 0xD4, 0xDF, 0x18, 0x4F, + 0xDD, 0xB4, 0x45, 0x7F, 0xA6, 0x56, 0x30, 0xC4, 0x05, 0x44, + 0x98, 0x9D, 0x4F, 0x26, 0x6D, 0x84, 0x80, 0xA0, 0x5E, 0xED, + 0x23, 0xD1, 0x48, 0x87, 0x0E, 0x05, 0x06, 0x91, 0x3B, 0xB0, + 0x3C, 0xBB, 0x8C, 0x8F, 0x3C, 0x7B, 0x4C, 0x4F, 0xA1, 0xCA, + 0x98 }; static const int sizeof_ca_cert_der_2048 = sizeof(ca_cert_der_2048); /* ./certs/ca-cert-chain.der, 2048-bit */ static const unsigned char ca_cert_chain_der[] = { - 0x30, 0x82, 0x03, 0xB5, 0x30, 0x82, 0x03, 0x1E, 0xA0, 0x03, - 0x02, 0x01, 0x02, 0x02, 0x09, 0x00, 0xDA, 0xFB, 0x6A, 0x0D, - 0xFE, 0xCF, 0x9B, 0x47, 0x30, 0x0D, 0x06, 0x09, 0x2A, 0x86, + 0x30, 0x82, 0x03, 0xE4, 0x30, 0x82, 0x03, 0x4D, 0xA0, 0x03, + 0x02, 0x01, 0x02, 0x02, 0x09, 0x00, 0xE9, 0x2F, 0xDA, 0xA8, + 0x53, 0xBD, 0xBD, 0xD5, 0x30, 0x0D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, 0x00, 0x30, - 0x81, 0x99, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, + 0x81, 0x94, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, 0x07, 0x42, 0x6F, 0x7A, 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x11, 0x30, 0x0F, 0x06, 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x08, 0x53, 0x61, 0x77, 0x74, 0x6F, 0x6F, 0x74, 0x68, - 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, - 0x0F, 0x43, 0x6F, 0x6E, 0x73, 0x75, 0x6C, 0x74, 0x69, 0x6E, - 0x67, 0x5F, 0x31, 0x30, 0x32, 0x34, 0x31, 0x18, 0x30, 0x16, - 0x06, 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, - 0x2E, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, - 0x6F, 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, - 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, - 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, - 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x30, 0x1E, 0x17, 0x0D, 0x31, - 0x38, 0x30, 0x34, 0x31, 0x33, 0x31, 0x35, 0x32, 0x33, 0x31, - 0x30, 0x5A, 0x17, 0x0D, 0x32, 0x31, 0x30, 0x31, 0x30, 0x37, - 0x31, 0x35, 0x32, 0x33, 0x31, 0x30, 0x5A, 0x30, 0x81, 0x99, - 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, - 0x02, 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, - 0x04, 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, 0x61, 0x6E, - 0x61, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x07, - 0x0C, 0x07, 0x42, 0x6F, 0x7A, 0x65, 0x6D, 0x61, 0x6E, 0x31, - 0x11, 0x30, 0x0F, 0x06, 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x08, - 0x53, 0x61, 0x77, 0x74, 0x6F, 0x6F, 0x74, 0x68, 0x31, 0x18, - 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x0F, 0x43, - 0x6F, 0x6E, 0x73, 0x75, 0x6C, 0x74, 0x69, 0x6E, 0x67, 0x5F, - 0x31, 0x30, 0x32, 0x34, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, + 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, + 0x0A, 0x43, 0x6F, 0x6E, 0x73, 0x75, 0x6C, 0x74, 0x69, 0x6E, + 0x67, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, + 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, + 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, + 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, + 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, + 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, + 0x30, 0x1E, 0x17, 0x0D, 0x32, 0x31, 0x30, 0x32, 0x31, 0x30, + 0x31, 0x39, 0x34, 0x39, 0x35, 0x32, 0x5A, 0x17, 0x0D, 0x32, + 0x33, 0x31, 0x31, 0x30, 0x37, 0x31, 0x39, 0x34, 0x39, 0x35, + 0x32, 0x5A, 0x30, 0x81, 0x94, 0x31, 0x0B, 0x30, 0x09, 0x06, + 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, + 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, + 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, 0x31, 0x10, 0x30, 0x0E, + 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, 0x07, 0x42, 0x6F, 0x7A, + 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x11, 0x30, 0x0F, 0x06, 0x03, + 0x55, 0x04, 0x0A, 0x0C, 0x08, 0x53, 0x61, 0x77, 0x74, 0x6F, + 0x6F, 0x74, 0x68, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55, + 0x04, 0x0B, 0x0C, 0x0A, 0x43, 0x6F, 0x6E, 0x73, 0x75, 0x6C, + 0x74, 0x69, 0x6E, 0x67, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, @@ -1569,168 +1712,54 @@ static const unsigned char ca_cert_chain_der[] = 0x01, 0xF8, 0x3F, 0x18, 0xF4, 0xE6, 0x7F, 0xFB, 0x57, 0x94, 0x92, 0xCC, 0x88, 0xC4, 0xB4, 0x00, 0xC2, 0xAA, 0xD4, 0xE5, 0x88, 0x18, 0xB3, 0x11, 0x2F, 0x73, 0xC0, 0xD6, 0x29, 0x09, - 0x02, 0x03, 0x01, 0x00, 0x01, 0xA3, 0x82, 0x01, 0x01, 0x30, - 0x81, 0xFE, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x0E, 0x04, - 0x16, 0x04, 0x14, 0xD3, 0x22, 0x8F, 0x28, 0x2C, 0xE0, 0x05, - 0xEE, 0xD3, 0xED, 0xC3, 0x71, 0x3D, 0xC9, 0xB2, 0x36, 0x3A, - 0x1D, 0xBF, 0xA8, 0x30, 0x81, 0xCE, 0x06, 0x03, 0x55, 0x1D, - 0x23, 0x04, 0x81, 0xC6, 0x30, 0x81, 0xC3, 0x80, 0x14, 0xD3, - 0x22, 0x8F, 0x28, 0x2C, 0xE0, 0x05, 0xEE, 0xD3, 0xED, 0xC3, - 0x71, 0x3D, 0xC9, 0xB2, 0x36, 0x3A, 0x1D, 0xBF, 0xA8, 0xA1, - 0x81, 0x9F, 0xA4, 0x81, 0x9C, 0x30, 0x81, 0x99, 0x31, 0x0B, - 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, - 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, - 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, 0x31, - 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, 0x07, - 0x42, 0x6F, 0x7A, 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x11, 0x30, - 0x0F, 0x06, 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x08, 0x53, 0x61, - 0x77, 0x74, 0x6F, 0x6F, 0x74, 0x68, 0x31, 0x18, 0x30, 0x16, - 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x0F, 0x43, 0x6F, 0x6E, - 0x73, 0x75, 0x6C, 0x74, 0x69, 0x6E, 0x67, 0x5F, 0x31, 0x30, - 0x32, 0x34, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, - 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, - 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, - 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, - 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, - 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, - 0x6D, 0x82, 0x09, 0x00, 0xDA, 0xFB, 0x6A, 0x0D, 0xFE, 0xCF, - 0x9B, 0x47, 0x30, 0x0C, 0x06, 0x03, 0x55, 0x1D, 0x13, 0x04, - 0x05, 0x30, 0x03, 0x01, 0x01, 0xFF, 0x30, 0x0D, 0x06, 0x09, - 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, - 0x00, 0x03, 0x81, 0x81, 0x00, 0x1D, 0x48, 0xF6, 0x40, 0x41, - 0x04, 0x06, 0xF2, 0xE4, 0x72, 0x2F, 0xEA, 0xFF, 0xC1, 0x67, - 0x6B, 0x15, 0xBB, 0x0A, 0x28, 0x23, 0x28, 0x07, 0xC6, 0xD7, - 0x13, 0x2C, 0xBE, 0x00, 0x00, 0xAC, 0x1D, 0xF7, 0xF4, 0x92, - 0xD3, 0x2B, 0xAF, 0x23, 0xEB, 0x9F, 0x1A, 0xE2, 0x11, 0x3C, - 0x2D, 0x97, 0xF2, 0x0F, 0xAC, 0xAE, 0x97, 0x86, 0x0A, 0xFB, - 0xA8, 0x4F, 0x74, 0x1B, 0xDE, 0x19, 0x51, 0xDB, 0xCD, 0xE2, - 0x11, 0x38, 0xC1, 0xA4, 0x9D, 0x56, 0xAB, 0x47, 0x5C, 0xDE, - 0xBA, 0xEB, 0x27, 0xDF, 0x6D, 0xC8, 0x7E, 0x3A, 0xBD, 0x2E, - 0x9B, 0x2A, 0xAD, 0x22, 0x3B, 0x95, 0xA9, 0xF2, 0x28, 0x03, - 0xBC, 0xE5, 0xEC, 0xCC, 0xF2, 0x08, 0xD4, 0xC8, 0x2F, 0xDB, - 0xEA, 0xFB, 0x2E, 0x52, 0x16, 0x8C, 0x42, 0x02, 0xA4, 0x59, - 0x6D, 0x4C, 0x33, 0xB4, 0x9A, 0xD2, 0x73, 0x4A, 0x1E, 0x9F, - 0xD9, 0xC8, 0x83, 0x30, 0x82, 0x04, 0xAA, 0x30, 0x82, 0x03, - 0x92, 0xA0, 0x03, 0x02, 0x01, 0x02, 0x02, 0x09, 0x00, 0x86, - 0xFF, 0xF5, 0x8E, 0x10, 0xDE, 0xB8, 0xFB, 0x30, 0x0D, 0x06, - 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, - 0x05, 0x00, 0x30, 0x81, 0x94, 0x31, 0x0B, 0x30, 0x09, 0x06, - 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, - 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, - 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, 0x31, 0x10, 0x30, 0x0E, - 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, 0x07, 0x42, 0x6F, 0x7A, - 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x11, 0x30, 0x0F, 0x06, 0x03, - 0x55, 0x04, 0x0A, 0x0C, 0x08, 0x53, 0x61, 0x77, 0x74, 0x6F, - 0x6F, 0x74, 0x68, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55, - 0x04, 0x0B, 0x0C, 0x0A, 0x43, 0x6F, 0x6E, 0x73, 0x75, 0x6C, - 0x74, 0x69, 0x6E, 0x67, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, - 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, - 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, - 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, - 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, - 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, - 0x63, 0x6F, 0x6D, 0x30, 0x1E, 0x17, 0x0D, 0x31, 0x38, 0x30, - 0x34, 0x31, 0x33, 0x31, 0x35, 0x32, 0x33, 0x30, 0x39, 0x5A, - 0x17, 0x0D, 0x32, 0x31, 0x30, 0x31, 0x30, 0x37, 0x31, 0x35, - 0x32, 0x33, 0x30, 0x39, 0x5A, 0x30, 0x81, 0x94, 0x31, 0x0B, - 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, - 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, - 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, 0x31, - 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, 0x07, - 0x42, 0x6F, 0x7A, 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x11, 0x30, - 0x0F, 0x06, 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x08, 0x53, 0x61, - 0x77, 0x74, 0x6F, 0x6F, 0x74, 0x68, 0x31, 0x13, 0x30, 0x11, - 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x0A, 0x43, 0x6F, 0x6E, - 0x73, 0x75, 0x6C, 0x74, 0x69, 0x6E, 0x67, 0x31, 0x18, 0x30, - 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, - 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, - 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, - 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, - 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, - 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x30, 0x82, 0x01, 0x22, - 0x30, 0x0D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, - 0x01, 0x01, 0x01, 0x05, 0x00, 0x03, 0x82, 0x01, 0x0F, 0x00, - 0x30, 0x82, 0x01, 0x0A, 0x02, 0x82, 0x01, 0x01, 0x00, 0xBF, - 0x0C, 0xCA, 0x2D, 0x14, 0xB2, 0x1E, 0x84, 0x42, 0x5B, 0xCD, - 0x38, 0x1F, 0x4A, 0xF2, 0x4D, 0x75, 0x10, 0xF1, 0xB6, 0x35, - 0x9F, 0xDF, 0xCA, 0x7D, 0x03, 0x98, 0xD3, 0xAC, 0xDE, 0x03, - 0x66, 0xEE, 0x2A, 0xF1, 0xD8, 0xB0, 0x7D, 0x6E, 0x07, 0x54, - 0x0B, 0x10, 0x98, 0x21, 0x4D, 0x80, 0xCB, 0x12, 0x20, 0xE7, - 0xCC, 0x4F, 0xDE, 0x45, 0x7D, 0xC9, 0x72, 0x77, 0x32, 0xEA, - 0xCA, 0x90, 0xBB, 0x69, 0x52, 0x10, 0x03, 0x2F, 0xA8, 0xF3, - 0x95, 0xC5, 0xF1, 0x8B, 0x62, 0x56, 0x1B, 0xEF, 0x67, 0x6F, - 0xA4, 0x10, 0x41, 0x95, 0xAD, 0x0A, 0x9B, 0xE3, 0xA5, 0xC0, - 0xB0, 0xD2, 0x70, 0x76, 0x50, 0x30, 0x5B, 0xA8, 0xE8, 0x08, - 0x2C, 0x7C, 0xED, 0xA7, 0xA2, 0x7A, 0x8D, 0x38, 0x29, 0x1C, - 0xAC, 0xC7, 0xED, 0xF2, 0x7C, 0x95, 0xB0, 0x95, 0x82, 0x7D, - 0x49, 0x5C, 0x38, 0xCD, 0x77, 0x25, 0xEF, 0xBD, 0x80, 0x75, - 0x53, 0x94, 0x3C, 0x3D, 0xCA, 0x63, 0x5B, 0x9F, 0x15, 0xB5, - 0xD3, 0x1D, 0x13, 0x2F, 0x19, 0xD1, 0x3C, 0xDB, 0x76, 0x3A, - 0xCC, 0xB8, 0x7D, 0xC9, 0xE5, 0xC2, 0xD7, 0xDA, 0x40, 0x6F, - 0xD8, 0x21, 0xDC, 0x73, 0x1B, 0x42, 0x2D, 0x53, 0x9C, 0xFE, - 0x1A, 0xFC, 0x7D, 0xAB, 0x7A, 0x36, 0x3F, 0x98, 0xDE, 0x84, - 0x7C, 0x05, 0x67, 0xCE, 0x6A, 0x14, 0x38, 0x87, 0xA9, 0xF1, - 0x8C, 0xB5, 0x68, 0xCB, 0x68, 0x7F, 0x71, 0x20, 0x2B, 0xF5, - 0xA0, 0x63, 0xF5, 0x56, 0x2F, 0xA3, 0x26, 0xD2, 0xB7, 0x6F, - 0xB1, 0x5A, 0x17, 0xD7, 0x38, 0x99, 0x08, 0xFE, 0x93, 0x58, - 0x6F, 0xFE, 0xC3, 0x13, 0x49, 0x08, 0x16, 0x0B, 0xA7, 0x4D, - 0x67, 0x00, 0x52, 0x31, 0x67, 0x23, 0x4E, 0x98, 0xED, 0x51, - 0x45, 0x1D, 0xB9, 0x04, 0xD9, 0x0B, 0xEC, 0xD8, 0x28, 0xB3, - 0x4B, 0xBD, 0xED, 0x36, 0x79, 0x02, 0x03, 0x01, 0x00, 0x01, - 0xA3, 0x81, 0xFC, 0x30, 0x81, 0xF9, 0x30, 0x1D, 0x06, 0x03, - 0x55, 0x1D, 0x0E, 0x04, 0x16, 0x04, 0x14, 0x27, 0x8E, 0x67, - 0x11, 0x74, 0xC3, 0x26, 0x1D, 0x3F, 0xED, 0x33, 0x63, 0xB3, - 0xA4, 0xD8, 0x1D, 0x30, 0xE5, 0xE8, 0xD5, 0x30, 0x81, 0xC9, - 0x06, 0x03, 0x55, 0x1D, 0x23, 0x04, 0x81, 0xC1, 0x30, 0x81, - 0xBE, 0x80, 0x14, 0x27, 0x8E, 0x67, 0x11, 0x74, 0xC3, 0x26, - 0x1D, 0x3F, 0xED, 0x33, 0x63, 0xB3, 0xA4, 0xD8, 0x1D, 0x30, - 0xE5, 0xE8, 0xD5, 0xA1, 0x81, 0x9A, 0xA4, 0x81, 0x97, 0x30, - 0x81, 0x94, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, - 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, - 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, - 0x61, 0x6E, 0x61, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, - 0x04, 0x07, 0x0C, 0x07, 0x42, 0x6F, 0x7A, 0x65, 0x6D, 0x61, - 0x6E, 0x31, 0x11, 0x30, 0x0F, 0x06, 0x03, 0x55, 0x04, 0x0A, - 0x0C, 0x08, 0x53, 0x61, 0x77, 0x74, 0x6F, 0x6F, 0x74, 0x68, - 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, - 0x0A, 0x43, 0x6F, 0x6E, 0x73, 0x75, 0x6C, 0x74, 0x69, 0x6E, - 0x67, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, - 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, - 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, - 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, - 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, - 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, - 0x82, 0x09, 0x00, 0x86, 0xFF, 0xF5, 0x8E, 0x10, 0xDE, 0xB8, - 0xFB, 0x30, 0x0C, 0x06, 0x03, 0x55, 0x1D, 0x13, 0x04, 0x05, - 0x30, 0x03, 0x01, 0x01, 0xFF, 0x30, 0x0D, 0x06, 0x09, 0x2A, - 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, 0x00, - 0x03, 0x82, 0x01, 0x01, 0x00, 0x9E, 0x28, 0x88, 0x72, 0x00, - 0xCA, 0xE6, 0xE7, 0x97, 0xCA, 0xC1, 0xF1, 0x1F, 0x9E, 0x12, - 0xB2, 0xB8, 0xC7, 0x51, 0xEA, 0x28, 0xE1, 0x36, 0xB5, 0x2D, - 0xE6, 0x2F, 0x08, 0x23, 0xCB, 0xA9, 0x4A, 0x87, 0x25, 0xC6, - 0x5D, 0x89, 0x45, 0xEA, 0xF5, 0x00, 0x98, 0xAC, 0x76, 0xFB, - 0x1B, 0xAF, 0xF0, 0xCE, 0x64, 0x9E, 0xDA, 0x08, 0xBF, 0xB6, - 0xEB, 0xB4, 0xB5, 0x0C, 0xA0, 0xE7, 0xF6, 0x47, 0x59, 0x1C, - 0x61, 0xCF, 0x2E, 0x0E, 0x58, 0xA4, 0x82, 0xAC, 0x0F, 0x3F, - 0xEC, 0xC4, 0xAE, 0x80, 0xF7, 0xB0, 0x8A, 0x1E, 0x85, 0x41, - 0xE8, 0xFF, 0xFE, 0xFE, 0x4F, 0x1A, 0x24, 0xD5, 0x49, 0xFA, - 0xFB, 0xFE, 0x5E, 0xE5, 0xD3, 0x91, 0x0E, 0x4F, 0x4E, 0x0C, - 0x21, 0x51, 0x71, 0x83, 0x04, 0x6B, 0x62, 0x7B, 0x4F, 0x59, - 0x76, 0x48, 0x81, 0x1E, 0xB4, 0xF7, 0x04, 0x47, 0x8A, 0x91, - 0x57, 0xA3, 0x11, 0xA9, 0xF2, 0x20, 0xB4, 0x78, 0x33, 0x62, - 0x3D, 0xB0, 0x5E, 0x0D, 0xF9, 0x86, 0x38, 0x82, 0xDA, 0xA1, - 0x98, 0x8D, 0x19, 0x06, 0x87, 0x21, 0x39, 0xB7, 0x02, 0xF7, - 0xDA, 0x7D, 0x58, 0xBA, 0x52, 0x15, 0xD8, 0x3B, 0xC9, 0x7B, - 0x58, 0x34, 0xA0, 0xC7, 0xE2, 0x7C, 0xA9, 0x83, 0x13, 0xE1, - 0xB6, 0xEC, 0x01, 0xBF, 0x52, 0x33, 0x0B, 0xC4, 0xFE, 0x43, - 0xD3, 0xC6, 0xA4, 0x8E, 0x2F, 0x87, 0x7F, 0x7A, 0x44, 0xEA, - 0xCA, 0x53, 0x6C, 0x85, 0xED, 0x65, 0x76, 0x73, 0x31, 0x03, - 0x4E, 0xEA, 0xBD, 0x35, 0x54, 0x13, 0xF3, 0x64, 0x87, 0x6B, - 0xDF, 0x34, 0xDD, 0x34, 0xA1, 0x88, 0x3B, 0xDB, 0x4D, 0xAF, - 0x1B, 0x64, 0x90, 0x92, 0x71, 0x30, 0x8E, 0xC8, 0xCC, 0xE5, - 0x60, 0x24, 0xAF, 0x31, 0x16, 0x39, 0x33, 0x91, 0x50, 0xF9, - 0xAB, 0x68, 0x42, 0x74, 0x7A, 0x35, 0xD9, 0xDD, 0xC8, 0xC4, - 0x52 + 0x02, 0x03, 0x01, 0x00, 0x01, 0xA3, 0x82, 0x01, 0x3A, 0x30, + 0x82, 0x01, 0x36, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x0E, + 0x04, 0x16, 0x04, 0x14, 0xD3, 0x22, 0x8F, 0x28, 0x2C, 0xE0, + 0x05, 0xEE, 0xD3, 0xED, 0xC3, 0x71, 0x3D, 0xC9, 0xB2, 0x36, + 0x3A, 0x1D, 0xBF, 0xA8, 0x30, 0x81, 0xC9, 0x06, 0x03, 0x55, + 0x1D, 0x23, 0x04, 0x81, 0xC1, 0x30, 0x81, 0xBE, 0x80, 0x14, + 0xD3, 0x22, 0x8F, 0x28, 0x2C, 0xE0, 0x05, 0xEE, 0xD3, 0xED, + 0xC3, 0x71, 0x3D, 0xC9, 0xB2, 0x36, 0x3A, 0x1D, 0xBF, 0xA8, + 0xA1, 0x81, 0x9A, 0xA4, 0x81, 0x97, 0x30, 0x81, 0x94, 0x31, + 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, + 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, + 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, + 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, + 0x07, 0x42, 0x6F, 0x7A, 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x11, + 0x30, 0x0F, 0x06, 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x08, 0x53, + 0x61, 0x77, 0x74, 0x6F, 0x6F, 0x74, 0x68, 0x31, 0x13, 0x30, + 0x11, 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x0A, 0x43, 0x6F, + 0x6E, 0x73, 0x75, 0x6C, 0x74, 0x69, 0x6E, 0x67, 0x31, 0x18, + 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, + 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, + 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, + 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, + 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, + 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x09, 0x00, + 0xE9, 0x2F, 0xDA, 0xA8, 0x53, 0xBD, 0xBD, 0xD5, 0x30, 0x0C, + 0x06, 0x03, 0x55, 0x1D, 0x13, 0x04, 0x05, 0x30, 0x03, 0x01, + 0x01, 0xFF, 0x30, 0x1C, 0x06, 0x03, 0x55, 0x1D, 0x11, 0x04, + 0x15, 0x30, 0x13, 0x82, 0x0B, 0x65, 0x78, 0x61, 0x6D, 0x70, + 0x6C, 0x65, 0x2E, 0x63, 0x6F, 0x6D, 0x87, 0x04, 0x7F, 0x00, + 0x00, 0x01, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x25, 0x04, + 0x16, 0x30, 0x14, 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, 0x05, + 0x07, 0x03, 0x01, 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, 0x05, + 0x07, 0x03, 0x02, 0x30, 0x0D, 0x06, 0x09, 0x2A, 0x86, 0x48, + 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, 0x00, 0x03, 0x81, + 0x81, 0x00, 0xB3, 0xE9, 0x88, 0x6A, 0xEA, 0x5F, 0x35, 0x7C, + 0x6C, 0xFD, 0x93, 0xFE, 0x9A, 0x98, 0xE7, 0x1C, 0xBC, 0xD1, + 0xC8, 0x7A, 0x15, 0xC5, 0x69, 0xE1, 0xFB, 0x35, 0x1B, 0xEC, + 0x92, 0x3F, 0xD1, 0x3E, 0x69, 0x2A, 0x11, 0x95, 0x44, 0x3D, + 0x3F, 0x7C, 0xFF, 0xF6, 0x64, 0xD8, 0xE4, 0x1D, 0xEC, 0x86, + 0x95, 0x69, 0x48, 0x3D, 0x5B, 0x6D, 0x39, 0xE7, 0x7E, 0x51, + 0x12, 0x15, 0x4B, 0x90, 0xA8, 0xFA, 0x1E, 0xAA, 0x81, 0x53, + 0xDE, 0x85, 0x29, 0x4D, 0x79, 0x6C, 0x08, 0xC2, 0xC4, 0x5E, + 0x4D, 0x39, 0xA6, 0x09, 0xA4, 0x67, 0xAC, 0xDC, 0xF0, 0xCD, + 0xB7, 0x4E, 0xE5, 0xF9, 0x72, 0xC3, 0x25, 0x1C, 0x8D, 0xE0, + 0x03, 0x30, 0x19, 0x5A, 0xA5, 0x63, 0xA6, 0xBA, 0xEC, 0x12, + 0x87, 0xEF, 0x6D, 0x56, 0x22, 0xA7, 0x42, 0x4A, 0x8F, 0x3B, + 0xFD, 0x20, 0xAB, 0xEF, 0x29, 0x5E, 0x3D, 0x16, 0xD7, 0xAC + }; static const int sizeof_ca_cert_chain_der = sizeof(ca_cert_chain_der); @@ -1863,7 +1892,7 @@ static const int sizeof_server_key_der_2048 = sizeof(server_key_der_2048); /* ./certs/server-cert.der, 2048-bit */ static const unsigned char server_cert_der_2048[] = { - 0x30, 0x82, 0x04, 0xE8, 0x30, 0x82, 0x03, 0xD0, 0xA0, 0x03, + 0x30, 0x82, 0x04, 0xDD, 0x30, 0x82, 0x03, 0xC5, 0xA0, 0x03, 0x02, 0x01, 0x02, 0x02, 0x01, 0x01, 0x30, 0x0D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, 0x00, 0x30, 0x81, 0x94, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, @@ -1881,10 +1910,10 @@ static const unsigned char server_cert_der_2048[] = 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, - 0x6F, 0x6D, 0x30, 0x1E, 0x17, 0x0D, 0x32, 0x30, 0x30, 0x36, - 0x31, 0x39, 0x31, 0x33, 0x32, 0x33, 0x34, 0x31, 0x5A, 0x17, - 0x0D, 0x32, 0x33, 0x30, 0x33, 0x31, 0x36, 0x31, 0x33, 0x32, - 0x33, 0x34, 0x31, 0x5A, 0x30, 0x81, 0x90, 0x31, 0x0B, 0x30, + 0x6F, 0x6D, 0x30, 0x1E, 0x17, 0x0D, 0x32, 0x31, 0x30, 0x32, + 0x31, 0x30, 0x31, 0x39, 0x34, 0x39, 0x35, 0x33, 0x5A, 0x17, + 0x0D, 0x32, 0x33, 0x31, 0x31, 0x30, 0x37, 0x31, 0x39, 0x34, + 0x39, 0x35, 0x33, 0x5A, 0x30, 0x81, 0x90, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, 0x31, 0x10, @@ -1928,12 +1957,12 @@ static const unsigned char server_cert_der_2048[] = 0x69, 0x42, 0x42, 0x09, 0xE9, 0xD8, 0x08, 0xBC, 0x33, 0x20, 0xB3, 0x58, 0x22, 0xA7, 0xAA, 0xEB, 0xC4, 0xE1, 0xE6, 0x61, 0x83, 0xC5, 0xD2, 0x96, 0xDF, 0xD9, 0xD0, 0x4F, 0xAD, 0xD7, - 0x02, 0x03, 0x01, 0x00, 0x01, 0xA3, 0x82, 0x01, 0x45, 0x30, - 0x82, 0x01, 0x41, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x0E, + 0x02, 0x03, 0x01, 0x00, 0x01, 0xA3, 0x82, 0x01, 0x3A, 0x30, + 0x82, 0x01, 0x36, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x0E, 0x04, 0x16, 0x04, 0x14, 0xB3, 0x11, 0x32, 0xC9, 0x92, 0x98, 0x84, 0xE2, 0xC9, 0xF8, 0xD0, 0x3B, 0x6E, 0x03, 0x42, 0xCA, - 0x1F, 0x0E, 0x8E, 0x3C, 0x30, 0x81, 0xD4, 0x06, 0x03, 0x55, - 0x1D, 0x23, 0x04, 0x81, 0xCC, 0x30, 0x81, 0xC9, 0x80, 0x14, + 0x1F, 0x0E, 0x8E, 0x3C, 0x30, 0x81, 0xC9, 0x06, 0x03, 0x55, + 0x1D, 0x23, 0x04, 0x81, 0xC1, 0x30, 0x81, 0xBE, 0x80, 0x14, 0x27, 0x8E, 0x67, 0x11, 0x74, 0xC3, 0x26, 0x1D, 0x3F, 0xED, 0x33, 0x63, 0xB3, 0xA4, 0xD8, 0x1D, 0x30, 0xE5, 0xE8, 0xD5, 0xA1, 0x81, 0x9A, 0xA4, 0x81, 0x97, 0x30, 0x81, 0x94, 0x31, @@ -1951,45 +1980,43 @@ static const unsigned char server_cert_der_2048[] = 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, - 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x14, 0x5E, - 0xBA, 0xA4, 0xF4, 0xB1, 0xF7, 0x48, 0x25, 0xE3, 0x5F, 0x9B, - 0xDA, 0xA1, 0x13, 0xED, 0xD5, 0x2B, 0x03, 0x67, 0x15, 0x30, - 0x0C, 0x06, 0x03, 0x55, 0x1D, 0x13, 0x04, 0x05, 0x30, 0x03, - 0x01, 0x01, 0xFF, 0x30, 0x1C, 0x06, 0x03, 0x55, 0x1D, 0x11, - 0x04, 0x15, 0x30, 0x13, 0x82, 0x0B, 0x65, 0x78, 0x61, 0x6D, - 0x70, 0x6C, 0x65, 0x2E, 0x63, 0x6F, 0x6D, 0x87, 0x04, 0x7F, - 0x00, 0x00, 0x01, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x25, - 0x04, 0x16, 0x30, 0x14, 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, - 0x05, 0x07, 0x03, 0x01, 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, - 0x05, 0x07, 0x03, 0x02, 0x30, 0x0D, 0x06, 0x09, 0x2A, 0x86, - 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, 0x00, 0x03, - 0x82, 0x01, 0x01, 0x00, 0x35, 0x91, 0xE6, 0x72, 0xCC, 0x0B, - 0xF1, 0x47, 0x8F, 0x3D, 0xE3, 0x5D, 0x52, 0x2F, 0x83, 0xB8, - 0xB1, 0x3B, 0x6D, 0xD6, 0xAC, 0x13, 0x79, 0x74, 0x14, 0xFF, - 0x07, 0x8D, 0xEE, 0x74, 0x77, 0x64, 0xFF, 0xB8, 0x83, 0x1D, - 0x81, 0x80, 0x84, 0xBB, 0x38, 0xFA, 0x8F, 0xF3, 0x75, 0x29, - 0x23, 0xCE, 0xE5, 0x09, 0xA8, 0x13, 0x85, 0x14, 0xB6, 0x6A, - 0x35, 0x30, 0x2C, 0x1C, 0xC4, 0x0F, 0x23, 0x67, 0xEA, 0xED, - 0xCB, 0x91, 0xC4, 0x05, 0xE3, 0xEC, 0x6B, 0xBE, 0x11, 0xBF, - 0xD9, 0x9A, 0xAB, 0x93, 0x17, 0x9F, 0xE4, 0x9A, 0x59, 0xD4, - 0xE7, 0xCC, 0xCE, 0xDC, 0x83, 0x10, 0xF5, 0xCD, 0xDE, 0xD7, - 0x35, 0x75, 0x4B, 0xAA, 0x7A, 0x7A, 0xBA, 0x02, 0xA0, 0xB0, - 0xB5, 0xC1, 0x8A, 0x6B, 0xB1, 0x72, 0xCF, 0x64, 0x59, 0x4E, - 0xD3, 0xA4, 0xA1, 0x6C, 0x64, 0x4B, 0x14, 0xCF, 0xA3, 0xD6, - 0x37, 0x0A, 0xE6, 0xF9, 0x5B, 0x21, 0xBE, 0xDE, 0x0C, 0xC1, - 0xCF, 0x43, 0xE1, 0x18, 0x0B, 0x19, 0x13, 0x6B, 0x8E, 0x3D, - 0xDF, 0x0F, 0xA7, 0x43, 0xFB, 0x35, 0x67, 0x4A, 0x50, 0xE8, - 0x09, 0x46, 0x34, 0xBD, 0xF4, 0xAB, 0x1A, 0x8F, 0xBD, 0x4D, - 0x1C, 0x6B, 0x20, 0xBE, 0x1C, 0x8C, 0xCA, 0x66, 0x98, 0xBA, - 0x03, 0x67, 0xF2, 0x1C, 0x3C, 0x1E, 0x01, 0xF0, 0x4D, 0xC6, - 0x85, 0x82, 0x6F, 0xA9, 0x49, 0xF7, 0x1B, 0x7D, 0x6B, 0xDB, - 0x76, 0x84, 0x73, 0xBB, 0x16, 0xC5, 0x6E, 0x74, 0xAB, 0x7B, - 0xFB, 0x1C, 0xE9, 0x91, 0xBB, 0x29, 0x73, 0x1C, 0xDE, 0x27, - 0xB4, 0x67, 0x3B, 0x10, 0x51, 0xF4, 0x17, 0xEB, 0xB8, 0x38, - 0xA0, 0x9A, 0xEB, 0x37, 0x5B, 0x76, 0x8F, 0x39, 0x12, 0x39, - 0x35, 0xD1, 0xCA, 0xFE, 0xC0, 0x26, 0xFB, 0x73, 0x50, 0x1E, - 0x2D, 0xB9, 0xD2, 0xBA, 0xE5, 0x4C, 0x35, 0xBD, 0xED, 0x7B - + 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x09, 0x00, + 0xAA, 0xD3, 0x3F, 0xAC, 0x18, 0x0A, 0x37, 0x4D, 0x30, 0x0C, + 0x06, 0x03, 0x55, 0x1D, 0x13, 0x04, 0x05, 0x30, 0x03, 0x01, + 0x01, 0xFF, 0x30, 0x1C, 0x06, 0x03, 0x55, 0x1D, 0x11, 0x04, + 0x15, 0x30, 0x13, 0x82, 0x0B, 0x65, 0x78, 0x61, 0x6D, 0x70, + 0x6C, 0x65, 0x2E, 0x63, 0x6F, 0x6D, 0x87, 0x04, 0x7F, 0x00, + 0x00, 0x01, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x25, 0x04, + 0x16, 0x30, 0x14, 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, 0x05, + 0x07, 0x03, 0x01, 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, 0x05, + 0x07, 0x03, 0x02, 0x30, 0x0D, 0x06, 0x09, 0x2A, 0x86, 0x48, + 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, 0x00, 0x03, 0x82, + 0x01, 0x01, 0x00, 0x1B, 0x0D, 0xA6, 0x44, 0x93, 0x0D, 0x0E, + 0x0C, 0x35, 0x28, 0x26, 0x40, 0x31, 0xD2, 0xEB, 0x26, 0x4C, + 0x47, 0x5B, 0x19, 0xFB, 0xAD, 0xFE, 0x3A, 0xF5, 0x30, 0x3A, + 0x28, 0xD7, 0xAA, 0x69, 0xA4, 0x15, 0xE7, 0x26, 0x6E, 0xB7, + 0x33, 0x56, 0xAC, 0x8F, 0x34, 0x3D, 0xF3, 0x21, 0x2F, 0x53, + 0x58, 0x91, 0xD0, 0x3E, 0xB4, 0x39, 0x48, 0xBF, 0x93, 0x11, + 0x74, 0x36, 0xD3, 0x87, 0x49, 0xC3, 0x34, 0x0D, 0x30, 0x30, + 0xAB, 0xF4, 0x4C, 0x27, 0x19, 0xD5, 0xC4, 0x0C, 0xAD, 0x49, + 0xBD, 0x91, 0xF8, 0xDA, 0x9E, 0xC8, 0x2D, 0x2A, 0xAC, 0xE2, + 0x75, 0x8E, 0xAA, 0x08, 0xD9, 0xBF, 0x65, 0xFF, 0xA3, 0xB1, + 0x4F, 0xF0, 0x60, 0x6F, 0x4D, 0x95, 0xC4, 0x06, 0x7F, 0xAF, + 0x66, 0x6A, 0x23, 0x3B, 0x3A, 0xA4, 0x61, 0xB6, 0x6C, 0xCA, + 0xBE, 0xE1, 0xB0, 0x77, 0xF3, 0xEC, 0x83, 0xD5, 0x8C, 0x1D, + 0x85, 0x7F, 0x8D, 0x74, 0xC8, 0xEC, 0x1E, 0x49, 0xEC, 0x57, + 0x4A, 0xCC, 0xFD, 0xE2, 0x3A, 0x3E, 0x54, 0x50, 0xAE, 0x67, + 0xCD, 0x17, 0xB0, 0x67, 0xA5, 0x53, 0x7F, 0xC3, 0x0E, 0x3E, + 0xA7, 0x58, 0xE8, 0xDF, 0xD5, 0x0C, 0xF2, 0x64, 0xF3, 0xAD, + 0x12, 0x70, 0xE3, 0xB9, 0x42, 0xBC, 0x08, 0x60, 0x76, 0xD5, + 0x0C, 0xA5, 0x31, 0x77, 0x50, 0xE0, 0xC8, 0xF3, 0x3A, 0x3D, + 0x45, 0xCF, 0x32, 0x75, 0xEF, 0x10, 0xDD, 0xB5, 0xED, 0x6E, + 0xD2, 0x2D, 0x57, 0x82, 0x95, 0x38, 0xBC, 0x7D, 0x54, 0xC4, + 0x84, 0x5E, 0xFB, 0x7E, 0x83, 0xF5, 0xF1, 0x2D, 0x9C, 0x98, + 0xAC, 0x73, 0xE3, 0xA7, 0xD2, 0x02, 0x30, 0xD6, 0x1F, 0x06, + 0x1E, 0xD0, 0xDC, 0x3A, 0xAC, 0xF4, 0xC2, 0xC2, 0xBE, 0x72, + 0x40, 0x9A, 0xEA, 0xCF, 0x35, 0x21, 0x3B, 0x56, 0x6D, 0xE1, + 0x52, 0xF2, 0x80, 0xD7, 0x35, 0x83, 0x97, 0x07, 0xCC }; static const int sizeof_server_cert_der_2048 = sizeof(server_cert_der_2048); @@ -2592,163 +2619,161 @@ static const int sizeof_client_keypub_der_3072 = sizeof(client_keypub_der_3072); /* ./certs/3072/client-cert.der, 3072-bit */ static const unsigned char client_cert_der_3072[] = { - 0x30, 0x82, 0x06, 0x1D, 0x30, 0x82, 0x04, 0x85, 0xA0, 0x03, - 0x02, 0x01, 0x02, 0x02, 0x14, 0x53, 0x82, 0x30, 0x49, 0xE8, - 0xBE, 0x64, 0x59, 0x2E, 0x35, 0x41, 0xAC, 0x31, 0x0D, 0x4D, - 0x25, 0x21, 0x54, 0x90, 0xA4, 0x30, 0x0D, 0x06, 0x09, 0x2A, - 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, 0x00, - 0x30, 0x81, 0x9E, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, - 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, - 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, - 0x74, 0x61, 0x6E, 0x61, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, - 0x55, 0x04, 0x07, 0x0C, 0x07, 0x42, 0x6F, 0x7A, 0x65, 0x6D, - 0x61, 0x6E, 0x31, 0x15, 0x30, 0x13, 0x06, 0x03, 0x55, 0x04, - 0x0A, 0x0C, 0x0C, 0x77, 0x6F, 0x6C, 0x66, 0x53, 0x53, 0x4C, - 0x5F, 0x33, 0x30, 0x37, 0x32, 0x31, 0x19, 0x30, 0x17, 0x06, - 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x10, 0x50, 0x72, 0x6F, 0x67, - 0x72, 0x61, 0x6D, 0x6D, 0x69, 0x6E, 0x67, 0x2D, 0x33, 0x30, - 0x37, 0x32, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, - 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, - 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, - 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, - 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, - 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, - 0x6D, 0x30, 0x1E, 0x17, 0x0D, 0x32, 0x30, 0x30, 0x36, 0x31, - 0x39, 0x31, 0x33, 0x32, 0x33, 0x34, 0x31, 0x5A, 0x17, 0x0D, - 0x32, 0x33, 0x30, 0x33, 0x31, 0x36, 0x31, 0x33, 0x32, 0x33, - 0x34, 0x31, 0x5A, 0x30, 0x81, 0x9E, 0x31, 0x0B, 0x30, 0x09, - 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, - 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, - 0x4D, 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, 0x31, 0x10, 0x30, - 0x0E, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, 0x07, 0x42, 0x6F, - 0x7A, 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x15, 0x30, 0x13, 0x06, - 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x0C, 0x77, 0x6F, 0x6C, 0x66, - 0x53, 0x53, 0x4C, 0x5F, 0x33, 0x30, 0x37, 0x32, 0x31, 0x19, - 0x30, 0x17, 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x10, 0x50, - 0x72, 0x6F, 0x67, 0x72, 0x61, 0x6D, 0x6D, 0x69, 0x6E, 0x67, - 0x2D, 0x33, 0x30, 0x37, 0x32, 0x31, 0x18, 0x30, 0x16, 0x06, - 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, - 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, - 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, - 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, - 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, - 0x2E, 0x63, 0x6F, 0x6D, 0x30, 0x82, 0x01, 0xA2, 0x30, 0x0D, - 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, - 0x01, 0x05, 0x00, 0x03, 0x82, 0x01, 0x8F, 0x00, 0x30, 0x82, - 0x01, 0x8A, 0x02, 0x82, 0x01, 0x81, 0x00, 0xAC, 0x39, 0x50, - 0x68, 0x8F, 0x78, 0xF8, 0x10, 0x9B, 0x68, 0x96, 0xD3, 0xE1, - 0x9C, 0x56, 0x68, 0x5A, 0x41, 0x62, 0xE3, 0xB3, 0x41, 0xB0, - 0x55, 0x80, 0x17, 0xB0, 0x88, 0x16, 0x9B, 0xE0, 0x97, 0x74, - 0x5F, 0x42, 0x79, 0x73, 0x42, 0xDF, 0x93, 0xF3, 0xAA, 0x9D, - 0xEE, 0x2D, 0x6F, 0xAA, 0xBC, 0x27, 0x90, 0x84, 0xC0, 0x5D, - 0xC7, 0xEC, 0x49, 0xEA, 0x5C, 0x66, 0x1D, 0x70, 0x9C, 0x53, - 0x5C, 0xBA, 0xA1, 0xB3, 0x58, 0xC9, 0x3E, 0x8E, 0x9B, 0x72, - 0x3D, 0x6E, 0x02, 0x02, 0x00, 0x9C, 0x65, 0x56, 0x82, 0xA3, - 0x22, 0xB4, 0x08, 0x5F, 0x2A, 0xEF, 0xDF, 0x9A, 0xD0, 0xE7, - 0x31, 0x59, 0x26, 0x5B, 0x0B, 0x1C, 0x63, 0x61, 0xFF, 0xD5, - 0x69, 0x32, 0x19, 0x06, 0x7E, 0x0F, 0x40, 0x3C, 0x7A, 0x1E, - 0xC8, 0xFC, 0x58, 0x6C, 0x64, 0xAE, 0x10, 0x3D, 0xA8, 0x23, - 0xFF, 0x8E, 0x1A, 0xCA, 0x6A, 0x82, 0xE2, 0xF9, 0x01, 0x64, - 0x2C, 0x97, 0xA0, 0x1A, 0x89, 0xA0, 0x74, 0xD3, 0xB6, 0x05, - 0x11, 0xF2, 0x62, 0x06, 0x48, 0x2A, 0xF7, 0x66, 0xCE, 0xC1, - 0x85, 0xE1, 0xD2, 0x27, 0xEA, 0xCA, 0x12, 0xA5, 0x91, 0x97, - 0x3E, 0xFC, 0x94, 0x06, 0x59, 0x51, 0xC0, 0xE7, 0x13, 0xB6, - 0x87, 0x7B, 0x5F, 0xD2, 0xC0, 0x56, 0x2F, 0x5E, 0x1D, 0x02, - 0xC3, 0x11, 0x2C, 0xDF, 0xF7, 0x01, 0xDA, 0xBD, 0x85, 0x54, - 0x35, 0x32, 0x5F, 0xC5, 0xC8, 0xF9, 0x7A, 0x9F, 0x89, 0xF7, - 0x03, 0x0E, 0x7E, 0x79, 0x5D, 0x04, 0x82, 0x35, 0x10, 0xFE, - 0x6D, 0x9B, 0xBF, 0xB8, 0xEE, 0xE2, 0x62, 0x87, 0x26, 0x5E, - 0x2F, 0x50, 0x2F, 0x78, 0x0C, 0xE8, 0x73, 0x4F, 0x88, 0x6A, - 0xD6, 0x26, 0xA4, 0xC9, 0xFC, 0xFA, 0x1E, 0x8A, 0xB0, 0xF4, - 0x32, 0xCF, 0x57, 0xCD, 0xA1, 0x58, 0x8A, 0x49, 0x0F, 0xBB, - 0xA9, 0x1D, 0x86, 0xAB, 0xB9, 0x8F, 0x8D, 0x57, 0x19, 0xB2, - 0x5A, 0x7E, 0xA4, 0xEA, 0xCC, 0xB7, 0x96, 0x7A, 0x3B, 0x38, - 0xCD, 0xDE, 0xE0, 0x61, 0xFC, 0xC9, 0x06, 0x8F, 0x93, 0x5A, - 0xCE, 0xAD, 0x2A, 0xE3, 0x2D, 0x3E, 0x39, 0x5D, 0x41, 0x83, - 0x01, 0x1F, 0x0F, 0xE1, 0x7F, 0x76, 0xC7, 0x28, 0xDA, 0x56, - 0xEF, 0xBF, 0xDC, 0x26, 0x35, 0x40, 0xBE, 0xAD, 0xC7, 0x38, - 0xAD, 0xA4, 0x06, 0xAC, 0xCA, 0xE8, 0x51, 0xEB, 0xC0, 0xF8, - 0x68, 0x02, 0x2C, 0x9B, 0xA1, 0x14, 0xBC, 0xF8, 0x61, 0x86, - 0xD7, 0x56, 0xD7, 0x73, 0xF4, 0xAB, 0xBB, 0x6A, 0x21, 0xD3, - 0x88, 0x22, 0xB4, 0xE7, 0x6F, 0x7F, 0x91, 0xE5, 0x0E, 0xC6, - 0x08, 0x49, 0xDE, 0xEA, 0x13, 0x58, 0x72, 0xA0, 0xAA, 0x3A, - 0xF9, 0x36, 0x03, 0x45, 0x57, 0x5E, 0x87, 0xD2, 0x73, 0x65, - 0xC4, 0x8C, 0xA3, 0xEE, 0xC9, 0xD6, 0x73, 0x7C, 0x96, 0x41, - 0x93, 0x02, 0x03, 0x01, 0x00, 0x01, 0xA3, 0x82, 0x01, 0x4F, - 0x30, 0x82, 0x01, 0x4B, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, - 0x0E, 0x04, 0x16, 0x04, 0x14, 0x3D, 0xD1, 0x84, 0xC2, 0xAF, - 0xB0, 0x20, 0x49, 0xBC, 0x74, 0x87, 0x41, 0x38, 0xAB, 0xBA, - 0xD2, 0xD4, 0x0C, 0xA3, 0xA8, 0x30, 0x81, 0xDE, 0x06, 0x03, - 0x55, 0x1D, 0x23, 0x04, 0x81, 0xD6, 0x30, 0x81, 0xD3, 0x80, - 0x14, 0x3D, 0xD1, 0x84, 0xC2, 0xAF, 0xB0, 0x20, 0x49, 0xBC, - 0x74, 0x87, 0x41, 0x38, 0xAB, 0xBA, 0xD2, 0xD4, 0x0C, 0xA3, - 0xA8, 0xA1, 0x81, 0xA4, 0xA4, 0x81, 0xA1, 0x30, 0x81, 0x9E, - 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, - 0x02, 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, - 0x04, 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, 0x61, 0x6E, - 0x61, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x07, - 0x0C, 0x07, 0x42, 0x6F, 0x7A, 0x65, 0x6D, 0x61, 0x6E, 0x31, - 0x15, 0x30, 0x13, 0x06, 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x0C, - 0x77, 0x6F, 0x6C, 0x66, 0x53, 0x53, 0x4C, 0x5F, 0x33, 0x30, - 0x37, 0x32, 0x31, 0x19, 0x30, 0x17, 0x06, 0x03, 0x55, 0x04, - 0x0B, 0x0C, 0x10, 0x50, 0x72, 0x6F, 0x67, 0x72, 0x61, 0x6D, - 0x6D, 0x69, 0x6E, 0x67, 0x2D, 0x33, 0x30, 0x37, 0x32, 0x31, - 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, - 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, - 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, - 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, - 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, - 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x14, - 0x53, 0x82, 0x30, 0x49, 0xE8, 0xBE, 0x64, 0x59, 0x2E, 0x35, - 0x41, 0xAC, 0x31, 0x0D, 0x4D, 0x25, 0x21, 0x54, 0x90, 0xA4, - 0x30, 0x0C, 0x06, 0x03, 0x55, 0x1D, 0x13, 0x04, 0x05, 0x30, - 0x03, 0x01, 0x01, 0xFF, 0x30, 0x1C, 0x06, 0x03, 0x55, 0x1D, - 0x11, 0x04, 0x15, 0x30, 0x13, 0x82, 0x0B, 0x65, 0x78, 0x61, - 0x6D, 0x70, 0x6C, 0x65, 0x2E, 0x63, 0x6F, 0x6D, 0x87, 0x04, - 0x7F, 0x00, 0x00, 0x01, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, - 0x25, 0x04, 0x16, 0x30, 0x14, 0x06, 0x08, 0x2B, 0x06, 0x01, - 0x05, 0x05, 0x07, 0x03, 0x01, 0x06, 0x08, 0x2B, 0x06, 0x01, - 0x05, 0x05, 0x07, 0x03, 0x02, 0x30, 0x0D, 0x06, 0x09, 0x2A, - 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, 0x00, - 0x03, 0x82, 0x01, 0x81, 0x00, 0x9E, 0xC9, 0x99, 0xB8, 0x8C, - 0xC1, 0xA2, 0xDB, 0xCB, 0x78, 0x73, 0x5A, 0x8A, 0x8D, 0x3B, - 0xF3, 0x0A, 0x2A, 0x2F, 0xEF, 0x30, 0x09, 0x18, 0x49, 0xE1, - 0xF7, 0x9F, 0x8A, 0xA2, 0x33, 0xCE, 0x7C, 0xEC, 0x88, 0xA3, - 0x3D, 0x81, 0x50, 0x76, 0x4B, 0x2C, 0x20, 0x82, 0xBC, 0x99, - 0x30, 0x82, 0x7F, 0x0E, 0x33, 0x9C, 0xC8, 0x02, 0x9B, 0x3C, - 0xDE, 0x3E, 0x65, 0x78, 0x2D, 0x6E, 0x27, 0x39, 0x4F, 0xC4, - 0x18, 0xD3, 0x96, 0x23, 0xA3, 0x2D, 0x91, 0x57, 0x90, 0x52, - 0xBD, 0x7D, 0x12, 0x3D, 0xBF, 0x7D, 0xB1, 0x35, 0x2E, 0xA6, - 0xBE, 0x26, 0x95, 0x3C, 0x04, 0x5C, 0x20, 0x6C, 0xD8, 0xE5, - 0x36, 0xB2, 0xE1, 0x7B, 0x0F, 0xA1, 0x2C, 0x1F, 0x28, 0x3C, - 0x19, 0xCB, 0xC4, 0x69, 0xBB, 0x59, 0xB4, 0x99, 0x13, 0xF2, - 0xE5, 0xF5, 0x6C, 0x23, 0xD3, 0x69, 0x3B, 0x01, 0xB7, 0x5A, - 0xA1, 0xBE, 0xF6, 0x70, 0x00, 0x6C, 0x9C, 0x2E, 0x2F, 0x22, - 0xEA, 0x4C, 0x7C, 0x72, 0xE3, 0x99, 0x21, 0xA9, 0xDD, 0xBA, - 0x8D, 0x16, 0x5C, 0x88, 0xF7, 0xC0, 0x99, 0xC2, 0x8E, 0x83, - 0x10, 0x3D, 0xEA, 0xC8, 0x11, 0x77, 0x6A, 0xE5, 0x78, 0x47, - 0x92, 0x33, 0xEC, 0xAA, 0x35, 0x8C, 0x13, 0xF0, 0x4C, 0x9D, - 0xDD, 0x35, 0x56, 0x42, 0x35, 0x36, 0xCE, 0xD8, 0x46, 0xD8, - 0xD7, 0xD4, 0x84, 0xA1, 0x17, 0xBC, 0x57, 0x09, 0xCB, 0xDA, - 0x56, 0xD2, 0x76, 0xAC, 0x6A, 0xC0, 0xB3, 0x71, 0xA3, 0x1C, - 0xD3, 0x2C, 0xEA, 0xF6, 0x4C, 0x9A, 0x4D, 0xDD, 0x3A, 0xCE, - 0x10, 0x33, 0xF0, 0x82, 0x34, 0x70, 0x71, 0x5D, 0x6F, 0x77, - 0x8F, 0xEC, 0xA2, 0x77, 0x7D, 0x1C, 0x9E, 0x7F, 0x55, 0x6B, - 0xE5, 0xD3, 0x29, 0x49, 0x3D, 0x77, 0xFD, 0x5F, 0xBB, 0xCA, - 0x7A, 0xB9, 0x80, 0xB5, 0x81, 0x69, 0xA3, 0x38, 0xA3, 0xC6, - 0x96, 0xD2, 0x21, 0x1D, 0x85, 0x08, 0x47, 0x59, 0xA9, 0xD4, - 0x92, 0x8E, 0x94, 0x3F, 0x5A, 0xA1, 0x36, 0xD7, 0x92, 0xB7, - 0x2F, 0xCE, 0xF0, 0xA8, 0x40, 0x50, 0xAE, 0x3F, 0xD0, 0x20, - 0x39, 0x86, 0xA6, 0xA1, 0x7C, 0x4F, 0x23, 0x5C, 0x9C, 0x5F, - 0xDA, 0x93, 0x75, 0xD6, 0x93, 0xB1, 0x5F, 0x30, 0x25, 0x76, - 0x6C, 0x77, 0x8F, 0xF8, 0x8E, 0x15, 0xAE, 0x66, 0x5B, 0x7D, - 0xEE, 0xD3, 0x49, 0xAE, 0xC6, 0x1C, 0xB0, 0x90, 0x96, 0x5D, - 0x36, 0x9E, 0x12, 0x4C, 0x98, 0x4A, 0xF1, 0xD1, 0x6B, 0xA4, - 0x7F, 0x76, 0xCB, 0x51, 0xF9, 0xF2, 0x52, 0x07, 0xE4, 0x60, - 0x6F, 0x67, 0x6F, 0xE3, 0xA3, 0x84, 0xC0, 0x43, 0x0D, 0xFD, - 0xF6, 0x25, 0x9E, 0x3C, 0xD3, 0x41, 0xE9, 0x44, 0xC5, 0xF7, - 0xB9, 0x11, 0x3B, 0x0F, 0xDC, 0x9C, 0xE3, 0xDD, 0xF2, 0xAC, - 0x06, 0xB3, 0x20, 0x14, 0x2D, 0x6C, 0xDB, 0x8E, 0x78 + 0x30, 0x82, 0x06, 0x07, 0x30, 0x82, 0x04, 0x6F, 0xA0, 0x03, + 0x02, 0x01, 0x02, 0x02, 0x09, 0x00, 0xA4, 0xE0, 0xAA, 0xF3, + 0x29, 0x50, 0x39, 0x8A, 0x30, 0x0D, 0x06, 0x09, 0x2A, 0x86, + 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, 0x00, 0x30, + 0x81, 0x9E, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, + 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, + 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, + 0x61, 0x6E, 0x61, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, + 0x04, 0x07, 0x0C, 0x07, 0x42, 0x6F, 0x7A, 0x65, 0x6D, 0x61, + 0x6E, 0x31, 0x15, 0x30, 0x13, 0x06, 0x03, 0x55, 0x04, 0x0A, + 0x0C, 0x0C, 0x77, 0x6F, 0x6C, 0x66, 0x53, 0x53, 0x4C, 0x5F, + 0x33, 0x30, 0x37, 0x32, 0x31, 0x19, 0x30, 0x17, 0x06, 0x03, + 0x55, 0x04, 0x0B, 0x0C, 0x10, 0x50, 0x72, 0x6F, 0x67, 0x72, + 0x61, 0x6D, 0x6D, 0x69, 0x6E, 0x67, 0x2D, 0x33, 0x30, 0x37, + 0x32, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, + 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, + 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, + 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, + 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, + 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, + 0x30, 0x1E, 0x17, 0x0D, 0x32, 0x31, 0x30, 0x32, 0x31, 0x30, + 0x31, 0x39, 0x34, 0x39, 0x35, 0x32, 0x5A, 0x17, 0x0D, 0x32, + 0x33, 0x31, 0x31, 0x30, 0x37, 0x31, 0x39, 0x34, 0x39, 0x35, + 0x32, 0x5A, 0x30, 0x81, 0x9E, 0x31, 0x0B, 0x30, 0x09, 0x06, + 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, + 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, + 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, 0x31, 0x10, 0x30, 0x0E, + 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, 0x07, 0x42, 0x6F, 0x7A, + 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x15, 0x30, 0x13, 0x06, 0x03, + 0x55, 0x04, 0x0A, 0x0C, 0x0C, 0x77, 0x6F, 0x6C, 0x66, 0x53, + 0x53, 0x4C, 0x5F, 0x33, 0x30, 0x37, 0x32, 0x31, 0x19, 0x30, + 0x17, 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x10, 0x50, 0x72, + 0x6F, 0x67, 0x72, 0x61, 0x6D, 0x6D, 0x69, 0x6E, 0x67, 0x2D, + 0x33, 0x30, 0x37, 0x32, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, + 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, + 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, + 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, + 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, + 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, + 0x63, 0x6F, 0x6D, 0x30, 0x82, 0x01, 0xA2, 0x30, 0x0D, 0x06, + 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x01, + 0x05, 0x00, 0x03, 0x82, 0x01, 0x8F, 0x00, 0x30, 0x82, 0x01, + 0x8A, 0x02, 0x82, 0x01, 0x81, 0x00, 0xAC, 0x39, 0x50, 0x68, + 0x8F, 0x78, 0xF8, 0x10, 0x9B, 0x68, 0x96, 0xD3, 0xE1, 0x9C, + 0x56, 0x68, 0x5A, 0x41, 0x62, 0xE3, 0xB3, 0x41, 0xB0, 0x55, + 0x80, 0x17, 0xB0, 0x88, 0x16, 0x9B, 0xE0, 0x97, 0x74, 0x5F, + 0x42, 0x79, 0x73, 0x42, 0xDF, 0x93, 0xF3, 0xAA, 0x9D, 0xEE, + 0x2D, 0x6F, 0xAA, 0xBC, 0x27, 0x90, 0x84, 0xC0, 0x5D, 0xC7, + 0xEC, 0x49, 0xEA, 0x5C, 0x66, 0x1D, 0x70, 0x9C, 0x53, 0x5C, + 0xBA, 0xA1, 0xB3, 0x58, 0xC9, 0x3E, 0x8E, 0x9B, 0x72, 0x3D, + 0x6E, 0x02, 0x02, 0x00, 0x9C, 0x65, 0x56, 0x82, 0xA3, 0x22, + 0xB4, 0x08, 0x5F, 0x2A, 0xEF, 0xDF, 0x9A, 0xD0, 0xE7, 0x31, + 0x59, 0x26, 0x5B, 0x0B, 0x1C, 0x63, 0x61, 0xFF, 0xD5, 0x69, + 0x32, 0x19, 0x06, 0x7E, 0x0F, 0x40, 0x3C, 0x7A, 0x1E, 0xC8, + 0xFC, 0x58, 0x6C, 0x64, 0xAE, 0x10, 0x3D, 0xA8, 0x23, 0xFF, + 0x8E, 0x1A, 0xCA, 0x6A, 0x82, 0xE2, 0xF9, 0x01, 0x64, 0x2C, + 0x97, 0xA0, 0x1A, 0x89, 0xA0, 0x74, 0xD3, 0xB6, 0x05, 0x11, + 0xF2, 0x62, 0x06, 0x48, 0x2A, 0xF7, 0x66, 0xCE, 0xC1, 0x85, + 0xE1, 0xD2, 0x27, 0xEA, 0xCA, 0x12, 0xA5, 0x91, 0x97, 0x3E, + 0xFC, 0x94, 0x06, 0x59, 0x51, 0xC0, 0xE7, 0x13, 0xB6, 0x87, + 0x7B, 0x5F, 0xD2, 0xC0, 0x56, 0x2F, 0x5E, 0x1D, 0x02, 0xC3, + 0x11, 0x2C, 0xDF, 0xF7, 0x01, 0xDA, 0xBD, 0x85, 0x54, 0x35, + 0x32, 0x5F, 0xC5, 0xC8, 0xF9, 0x7A, 0x9F, 0x89, 0xF7, 0x03, + 0x0E, 0x7E, 0x79, 0x5D, 0x04, 0x82, 0x35, 0x10, 0xFE, 0x6D, + 0x9B, 0xBF, 0xB8, 0xEE, 0xE2, 0x62, 0x87, 0x26, 0x5E, 0x2F, + 0x50, 0x2F, 0x78, 0x0C, 0xE8, 0x73, 0x4F, 0x88, 0x6A, 0xD6, + 0x26, 0xA4, 0xC9, 0xFC, 0xFA, 0x1E, 0x8A, 0xB0, 0xF4, 0x32, + 0xCF, 0x57, 0xCD, 0xA1, 0x58, 0x8A, 0x49, 0x0F, 0xBB, 0xA9, + 0x1D, 0x86, 0xAB, 0xB9, 0x8F, 0x8D, 0x57, 0x19, 0xB2, 0x5A, + 0x7E, 0xA4, 0xEA, 0xCC, 0xB7, 0x96, 0x7A, 0x3B, 0x38, 0xCD, + 0xDE, 0xE0, 0x61, 0xFC, 0xC9, 0x06, 0x8F, 0x93, 0x5A, 0xCE, + 0xAD, 0x2A, 0xE3, 0x2D, 0x3E, 0x39, 0x5D, 0x41, 0x83, 0x01, + 0x1F, 0x0F, 0xE1, 0x7F, 0x76, 0xC7, 0x28, 0xDA, 0x56, 0xEF, + 0xBF, 0xDC, 0x26, 0x35, 0x40, 0xBE, 0xAD, 0xC7, 0x38, 0xAD, + 0xA4, 0x06, 0xAC, 0xCA, 0xE8, 0x51, 0xEB, 0xC0, 0xF8, 0x68, + 0x02, 0x2C, 0x9B, 0xA1, 0x14, 0xBC, 0xF8, 0x61, 0x86, 0xD7, + 0x56, 0xD7, 0x73, 0xF4, 0xAB, 0xBB, 0x6A, 0x21, 0xD3, 0x88, + 0x22, 0xB4, 0xE7, 0x6F, 0x7F, 0x91, 0xE5, 0x0E, 0xC6, 0x08, + 0x49, 0xDE, 0xEA, 0x13, 0x58, 0x72, 0xA0, 0xAA, 0x3A, 0xF9, + 0x36, 0x03, 0x45, 0x57, 0x5E, 0x87, 0xD2, 0x73, 0x65, 0xC4, + 0x8C, 0xA3, 0xEE, 0xC9, 0xD6, 0x73, 0x7C, 0x96, 0x41, 0x93, + 0x02, 0x03, 0x01, 0x00, 0x01, 0xA3, 0x82, 0x01, 0x44, 0x30, + 0x82, 0x01, 0x40, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x0E, + 0x04, 0x16, 0x04, 0x14, 0x3D, 0xD1, 0x84, 0xC2, 0xAF, 0xB0, + 0x20, 0x49, 0xBC, 0x74, 0x87, 0x41, 0x38, 0xAB, 0xBA, 0xD2, + 0xD4, 0x0C, 0xA3, 0xA8, 0x30, 0x81, 0xD3, 0x06, 0x03, 0x55, + 0x1D, 0x23, 0x04, 0x81, 0xCB, 0x30, 0x81, 0xC8, 0x80, 0x14, + 0x3D, 0xD1, 0x84, 0xC2, 0xAF, 0xB0, 0x20, 0x49, 0xBC, 0x74, + 0x87, 0x41, 0x38, 0xAB, 0xBA, 0xD2, 0xD4, 0x0C, 0xA3, 0xA8, + 0xA1, 0x81, 0xA4, 0xA4, 0x81, 0xA1, 0x30, 0x81, 0x9E, 0x31, + 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, + 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, + 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, + 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, + 0x07, 0x42, 0x6F, 0x7A, 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x15, + 0x30, 0x13, 0x06, 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x0C, 0x77, + 0x6F, 0x6C, 0x66, 0x53, 0x53, 0x4C, 0x5F, 0x33, 0x30, 0x37, + 0x32, 0x31, 0x19, 0x30, 0x17, 0x06, 0x03, 0x55, 0x04, 0x0B, + 0x0C, 0x10, 0x50, 0x72, 0x6F, 0x67, 0x72, 0x61, 0x6D, 0x6D, + 0x69, 0x6E, 0x67, 0x2D, 0x33, 0x30, 0x37, 0x32, 0x31, 0x18, + 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, + 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, + 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, + 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, + 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, + 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x09, 0x00, + 0xA4, 0xE0, 0xAA, 0xF3, 0x29, 0x50, 0x39, 0x8A, 0x30, 0x0C, + 0x06, 0x03, 0x55, 0x1D, 0x13, 0x04, 0x05, 0x30, 0x03, 0x01, + 0x01, 0xFF, 0x30, 0x1C, 0x06, 0x03, 0x55, 0x1D, 0x11, 0x04, + 0x15, 0x30, 0x13, 0x82, 0x0B, 0x65, 0x78, 0x61, 0x6D, 0x70, + 0x6C, 0x65, 0x2E, 0x63, 0x6F, 0x6D, 0x87, 0x04, 0x7F, 0x00, + 0x00, 0x01, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x25, 0x04, + 0x16, 0x30, 0x14, 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, 0x05, + 0x07, 0x03, 0x01, 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, 0x05, + 0x07, 0x03, 0x02, 0x30, 0x0D, 0x06, 0x09, 0x2A, 0x86, 0x48, + 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, 0x00, 0x03, 0x82, + 0x01, 0x81, 0x00, 0x57, 0x21, 0xC0, 0xAD, 0x6E, 0x16, 0x74, + 0xD5, 0xB1, 0x8B, 0x19, 0x55, 0x49, 0x7A, 0xA4, 0x5E, 0xD6, + 0x18, 0xF9, 0x03, 0x80, 0x4B, 0xC2, 0x71, 0xD1, 0x04, 0x47, + 0x9C, 0xB3, 0x73, 0x9C, 0x4F, 0x62, 0x4A, 0x3A, 0x9A, 0xD4, + 0x48, 0xE4, 0x81, 0xDB, 0x8D, 0x15, 0xDF, 0x5D, 0x0F, 0x08, + 0x13, 0x28, 0x28, 0xD7, 0x05, 0x44, 0xC1, 0xB9, 0x6D, 0xF1, + 0x75, 0x60, 0x74, 0xD0, 0x44, 0xAE, 0x91, 0x0F, 0x3A, 0x7C, + 0xF4, 0xEE, 0xEA, 0x6F, 0x06, 0x3A, 0x41, 0xAE, 0x6B, 0x5C, + 0x8A, 0x0D, 0x85, 0x6B, 0xB3, 0xFB, 0xB1, 0x5F, 0x70, 0xF7, + 0x9B, 0x32, 0x57, 0xFB, 0xC4, 0x6B, 0xCE, 0x90, 0x86, 0x0C, + 0x96, 0x8A, 0x41, 0x4E, 0x61, 0xF3, 0xA1, 0x3F, 0x55, 0xE8, + 0x94, 0x56, 0x12, 0x6D, 0x9E, 0x46, 0x2C, 0x31, 0xBD, 0x3F, + 0x8A, 0x70, 0xC8, 0x20, 0xA4, 0xFB, 0xFA, 0xC6, 0x53, 0x58, + 0xBB, 0x05, 0x28, 0xBA, 0x89, 0x0C, 0xB1, 0x5F, 0x21, 0xAC, + 0x1E, 0xF1, 0x35, 0xFD, 0x6B, 0x14, 0xC1, 0x69, 0x08, 0xE9, + 0x37, 0x14, 0xD8, 0x76, 0x50, 0x2A, 0xFC, 0xAA, 0x94, 0x7F, + 0x39, 0x52, 0x3A, 0xA7, 0x3C, 0x0A, 0x53, 0x5E, 0xE0, 0x13, + 0x1A, 0x00, 0xCA, 0xAC, 0xAA, 0x7E, 0xF7, 0x09, 0x68, 0x78, + 0x60, 0x11, 0x73, 0xAB, 0x7D, 0x58, 0xFE, 0x03, 0x9F, 0xE6, + 0x84, 0xEA, 0x51, 0x58, 0x40, 0x82, 0xA5, 0xFF, 0xA7, 0x2C, + 0xEA, 0x42, 0xA5, 0x4C, 0xB6, 0x3B, 0x5C, 0x6B, 0xAB, 0xCF, + 0x56, 0x8A, 0x8C, 0xEC, 0x3C, 0xF0, 0xAE, 0xD3, 0xCA, 0x0E, + 0x09, 0x71, 0xCF, 0x79, 0x96, 0x72, 0x63, 0x4B, 0x24, 0x7A, + 0xF3, 0x79, 0xCA, 0x69, 0x75, 0xC9, 0xB2, 0xA4, 0x54, 0xB8, + 0x84, 0x40, 0x2B, 0x8F, 0x24, 0x27, 0x6A, 0xED, 0x8F, 0x53, + 0xE0, 0x55, 0x9B, 0x35, 0x91, 0x18, 0x11, 0xCF, 0xB0, 0x3B, + 0xB8, 0x65, 0x3C, 0xC6, 0xEF, 0xB0, 0x78, 0x7C, 0x43, 0x26, + 0xF1, 0x12, 0x84, 0x6B, 0x2B, 0xF0, 0x7D, 0x3C, 0x7F, 0xDC, + 0x67, 0xA4, 0x17, 0x89, 0x75, 0x00, 0x86, 0x1A, 0xEA, 0xCD, + 0x1A, 0xCF, 0xDA, 0x11, 0x64, 0xCC, 0xBD, 0x10, 0x26, 0xEF, + 0x6B, 0x1B, 0x93, 0xB3, 0x37, 0x14, 0x7F, 0x12, 0x80, 0x81, + 0xB6, 0xFD, 0x8A, 0x8A, 0xD8, 0x95, 0x5F, 0xF9, 0x1E, 0xA5, + 0x1E, 0x65, 0x5F, 0x75, 0x8D, 0x90, 0x2A, 0x0D, 0xB1, 0xAB, + 0x26, 0x16, 0x31, 0xB2, 0x06, 0x64, 0x6F, 0x2B, 0x7E, 0x4A, + 0xF4, 0xDE, 0xE9, 0x7A, 0xEC, 0x67, 0x35, 0xF3, 0x40, 0x71, + 0x75, 0x37, 0xB3, 0xE1, 0x1D, 0xEF, 0x7D, 0xE2, 0x92, 0xEC, + 0xD5, 0xE5, 0xBB, 0x99, 0x79, 0x50, 0x11, 0xB2, 0x8A, 0x57, + 0x1B, 0x30, 0x2E, 0xB7, 0x16, 0x4C, 0xC8, 0xA6, 0x99, 0xB1, + 0x01, 0x34, 0x08, 0x9D, 0xD8, 0xDF, 0xAF }; static const int sizeof_client_cert_der_3072 = sizeof(client_cert_der_3072); @@ -3062,189 +3087,187 @@ static const int sizeof_client_keypub_der_4096 = sizeof(client_keypub_der_4096); /* ./certs/4096/client-cert.der, 4096-bit */ static const unsigned char client_cert_der_4096[] = { - 0x30, 0x82, 0x07, 0x1D, 0x30, 0x82, 0x05, 0x05, 0xA0, 0x03, - 0x02, 0x01, 0x02, 0x02, 0x14, 0x36, 0x8A, 0xA6, 0x8A, 0x3D, - 0x0A, 0x72, 0xFF, 0xDD, 0xE4, 0x4F, 0x56, 0xBD, 0x89, 0x24, - 0x23, 0x3C, 0x0B, 0xB6, 0x40, 0x30, 0x0D, 0x06, 0x09, 0x2A, - 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, 0x00, - 0x30, 0x81, 0x9E, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, - 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, - 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, - 0x74, 0x61, 0x6E, 0x61, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, - 0x55, 0x04, 0x07, 0x0C, 0x07, 0x42, 0x6F, 0x7A, 0x65, 0x6D, - 0x61, 0x6E, 0x31, 0x15, 0x30, 0x13, 0x06, 0x03, 0x55, 0x04, - 0x0A, 0x0C, 0x0C, 0x77, 0x6F, 0x6C, 0x66, 0x53, 0x53, 0x4C, - 0x5F, 0x34, 0x30, 0x39, 0x36, 0x31, 0x19, 0x30, 0x17, 0x06, - 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x10, 0x50, 0x72, 0x6F, 0x67, - 0x72, 0x61, 0x6D, 0x6D, 0x69, 0x6E, 0x67, 0x2D, 0x34, 0x30, - 0x39, 0x36, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, - 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, - 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, - 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, - 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, - 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, - 0x6D, 0x30, 0x1E, 0x17, 0x0D, 0x32, 0x30, 0x30, 0x36, 0x31, - 0x39, 0x31, 0x33, 0x32, 0x33, 0x34, 0x31, 0x5A, 0x17, 0x0D, - 0x32, 0x33, 0x30, 0x33, 0x31, 0x36, 0x31, 0x33, 0x32, 0x33, - 0x34, 0x31, 0x5A, 0x30, 0x81, 0x9E, 0x31, 0x0B, 0x30, 0x09, - 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, - 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, - 0x4D, 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, 0x31, 0x10, 0x30, - 0x0E, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, 0x07, 0x42, 0x6F, - 0x7A, 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x15, 0x30, 0x13, 0x06, - 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x0C, 0x77, 0x6F, 0x6C, 0x66, - 0x53, 0x53, 0x4C, 0x5F, 0x34, 0x30, 0x39, 0x36, 0x31, 0x19, - 0x30, 0x17, 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x10, 0x50, - 0x72, 0x6F, 0x67, 0x72, 0x61, 0x6D, 0x6D, 0x69, 0x6E, 0x67, - 0x2D, 0x34, 0x30, 0x39, 0x36, 0x31, 0x18, 0x30, 0x16, 0x06, - 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, - 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, - 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, - 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, - 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, - 0x2E, 0x63, 0x6F, 0x6D, 0x30, 0x82, 0x02, 0x22, 0x30, 0x0D, - 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, - 0x01, 0x05, 0x00, 0x03, 0x82, 0x02, 0x0F, 0x00, 0x30, 0x82, - 0x02, 0x0A, 0x02, 0x82, 0x02, 0x01, 0x00, 0xF5, 0xD0, 0x31, - 0xE4, 0x71, 0x59, 0x58, 0xB3, 0x07, 0x50, 0xDD, 0x16, 0x79, - 0xFC, 0xC6, 0x95, 0x50, 0xFC, 0x46, 0x0E, 0x57, 0x12, 0x86, - 0x71, 0x8D, 0xE3, 0x9B, 0x4A, 0x33, 0xEA, 0x4F, 0xD9, 0x17, - 0x13, 0x6D, 0x48, 0x69, 0xDF, 0x59, 0x11, 0x08, 0x02, 0x9D, - 0xAF, 0x2B, 0xC7, 0x30, 0xBE, 0x0C, 0xDC, 0x87, 0xD4, 0x5A, - 0x12, 0x09, 0x23, 0x5D, 0xE1, 0x76, 0x5A, 0x62, 0x37, 0x46, - 0x74, 0xEF, 0x03, 0x05, 0xBB, 0x1E, 0x6D, 0x29, 0x75, 0x6C, - 0x2E, 0x9D, 0x87, 0x0D, 0x8F, 0x87, 0xCB, 0x14, 0x95, 0x9B, - 0xBE, 0x17, 0x6B, 0x51, 0xD1, 0x4C, 0xDA, 0xD7, 0x91, 0x66, - 0xC5, 0x36, 0xEB, 0xE0, 0x07, 0x1A, 0x76, 0x4D, 0xB0, 0xFB, - 0xC1, 0xF5, 0x5E, 0x05, 0xDB, 0xBA, 0xCB, 0x25, 0xD9, 0x99, - 0x13, 0x1C, 0xC0, 0x35, 0xDC, 0x40, 0xE9, 0x36, 0xCD, 0xC4, - 0xD5, 0x7A, 0x41, 0x70, 0x0F, 0x36, 0xEB, 0xA5, 0x4E, 0x17, - 0x05, 0xD5, 0x75, 0x1B, 0x64, 0x62, 0x7A, 0x3F, 0x0D, 0x28, - 0x48, 0x6A, 0xE3, 0xAC, 0x9C, 0xA8, 0x8F, 0xE9, 0xED, 0xF7, - 0xCD, 0x24, 0xA0, 0xB1, 0xA0, 0x03, 0xAC, 0xE3, 0x03, 0xF5, - 0x3F, 0xD1, 0x96, 0xFF, 0x2A, 0x7E, 0x08, 0xB1, 0xD3, 0xE0, - 0x18, 0x14, 0xEC, 0x65, 0x37, 0x50, 0x43, 0xC2, 0x6A, 0x8C, - 0xF4, 0x5B, 0xFE, 0xC4, 0xCB, 0x8D, 0x3F, 0x81, 0x02, 0xF7, - 0xC2, 0xDD, 0xE4, 0xC1, 0x8E, 0x80, 0x0C, 0x04, 0x25, 0x2D, - 0x80, 0x5A, 0x2E, 0x0F, 0x22, 0x35, 0x4A, 0xF4, 0x85, 0xED, - 0x51, 0xD8, 0xAB, 0x6D, 0x8F, 0xA2, 0x3B, 0x24, 0x00, 0x6E, - 0x81, 0xE2, 0x1E, 0x76, 0xD6, 0xAC, 0x31, 0x12, 0xDB, 0xF3, - 0x8E, 0x07, 0xA1, 0xDE, 0x89, 0x4A, 0x39, 0x60, 0x77, 0xC5, - 0xAA, 0xF1, 0x51, 0xE6, 0x06, 0xF1, 0x95, 0x56, 0x2A, 0xE1, - 0x8E, 0x92, 0x30, 0x9F, 0xFE, 0x58, 0x44, 0xAC, 0x46, 0xF2, - 0xFD, 0x9A, 0xFC, 0xA8, 0x1D, 0xA1, 0xD3, 0x55, 0x37, 0x4A, - 0x8B, 0xFC, 0x9C, 0x33, 0xF8, 0xA7, 0x61, 0x48, 0x41, 0x7C, - 0x9C, 0x77, 0x3F, 0xF5, 0x80, 0x23, 0x7D, 0x43, 0xB4, 0xD5, - 0x88, 0x0A, 0xC9, 0x75, 0xD7, 0x44, 0x19, 0x4D, 0x77, 0x6C, - 0x0B, 0x0A, 0x49, 0xAA, 0x1C, 0x2F, 0xD6, 0x5A, 0x44, 0xA6, - 0x47, 0x4D, 0xE5, 0x36, 0x96, 0x40, 0x99, 0x2C, 0x56, 0x26, - 0xB1, 0xF2, 0x92, 0x31, 0x59, 0xD7, 0x2C, 0xD4, 0xB4, 0x21, - 0xD6, 0x65, 0x13, 0x0B, 0x3E, 0xFB, 0xFF, 0x04, 0xEB, 0xB9, - 0x85, 0xB9, 0xD8, 0xD8, 0x28, 0x4F, 0x5C, 0x17, 0x96, 0xA3, - 0x51, 0xBE, 0xFE, 0x7D, 0x0B, 0x1B, 0x48, 0x40, 0x25, 0x76, - 0x94, 0xDC, 0x41, 0xFB, 0xBF, 0x73, 0x76, 0xDA, 0xEB, 0xB3, - 0x62, 0xE7, 0xC1, 0xC8, 0x54, 0x6A, 0x93, 0xE1, 0x8D, 0x31, - 0xE8, 0x3E, 0x3E, 0xDF, 0xBC, 0x87, 0x02, 0x30, 0x22, 0x57, - 0xC4, 0xE0, 0x18, 0x7A, 0xD3, 0xAE, 0xE4, 0x02, 0x9B, 0xAA, - 0xBD, 0x4E, 0x49, 0x47, 0x72, 0xE9, 0x8D, 0x13, 0x2D, 0x54, - 0x9B, 0x00, 0xA7, 0x91, 0x61, 0x71, 0xC9, 0xCC, 0x48, 0x4F, - 0xEE, 0xDF, 0x5E, 0x1B, 0x1A, 0xDF, 0x67, 0xD3, 0x20, 0xE6, - 0x44, 0x45, 0x98, 0x7E, 0xE7, 0x0E, 0x63, 0x16, 0x83, 0xC9, - 0x26, 0x5D, 0x90, 0xC1, 0xE5, 0x2A, 0x5C, 0x45, 0x54, 0x13, - 0xB2, 0x81, 0x18, 0x06, 0x20, 0x2E, 0x2E, 0x66, 0x5A, 0xB5, - 0x7B, 0x6E, 0xD6, 0x0C, 0x4E, 0x89, 0x01, 0x56, 0x70, 0xBB, - 0xAE, 0xDE, 0xE9, 0x99, 0x5E, 0xD1, 0xB9, 0x3A, 0xB7, 0x6C, - 0x17, 0xB6, 0x03, 0xA9, 0x08, 0xDD, 0x9C, 0xF4, 0x14, 0xC9, - 0xC9, 0x59, 0x39, 0x72, 0xD4, 0x7E, 0x02, 0x37, 0x31, 0xCD, - 0x0E, 0xA7, 0x3D, 0xF8, 0xF2, 0xCF, 0x6B, 0x15, 0xAB, 0x02, - 0x03, 0x01, 0x00, 0x01, 0xA3, 0x82, 0x01, 0x4F, 0x30, 0x82, - 0x01, 0x4B, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x0E, 0x04, - 0x16, 0x04, 0x14, 0xFA, 0x54, 0x89, 0x67, 0xE5, 0x5F, 0xB7, - 0x31, 0x40, 0xEA, 0xFD, 0xE7, 0xF6, 0xA3, 0xC6, 0x5A, 0x56, - 0x16, 0xA5, 0x6E, 0x30, 0x81, 0xDE, 0x06, 0x03, 0x55, 0x1D, - 0x23, 0x04, 0x81, 0xD6, 0x30, 0x81, 0xD3, 0x80, 0x14, 0xFA, - 0x54, 0x89, 0x67, 0xE5, 0x5F, 0xB7, 0x31, 0x40, 0xEA, 0xFD, - 0xE7, 0xF6, 0xA3, 0xC6, 0x5A, 0x56, 0x16, 0xA5, 0x6E, 0xA1, - 0x81, 0xA4, 0xA4, 0x81, 0xA1, 0x30, 0x81, 0x9E, 0x31, 0x0B, - 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, - 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, - 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, 0x31, - 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, 0x07, - 0x42, 0x6F, 0x7A, 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x15, 0x30, - 0x13, 0x06, 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x0C, 0x77, 0x6F, - 0x6C, 0x66, 0x53, 0x53, 0x4C, 0x5F, 0x34, 0x30, 0x39, 0x36, - 0x31, 0x19, 0x30, 0x17, 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, - 0x10, 0x50, 0x72, 0x6F, 0x67, 0x72, 0x61, 0x6D, 0x6D, 0x69, - 0x6E, 0x67, 0x2D, 0x34, 0x30, 0x39, 0x36, 0x31, 0x18, 0x30, - 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, - 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, - 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, - 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, - 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, - 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x14, 0x36, 0x8A, - 0xA6, 0x8A, 0x3D, 0x0A, 0x72, 0xFF, 0xDD, 0xE4, 0x4F, 0x56, - 0xBD, 0x89, 0x24, 0x23, 0x3C, 0x0B, 0xB6, 0x40, 0x30, 0x0C, - 0x06, 0x03, 0x55, 0x1D, 0x13, 0x04, 0x05, 0x30, 0x03, 0x01, - 0x01, 0xFF, 0x30, 0x1C, 0x06, 0x03, 0x55, 0x1D, 0x11, 0x04, - 0x15, 0x30, 0x13, 0x82, 0x0B, 0x65, 0x78, 0x61, 0x6D, 0x70, - 0x6C, 0x65, 0x2E, 0x63, 0x6F, 0x6D, 0x87, 0x04, 0x7F, 0x00, - 0x00, 0x01, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x25, 0x04, - 0x16, 0x30, 0x14, 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, 0x05, - 0x07, 0x03, 0x01, 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, 0x05, - 0x07, 0x03, 0x02, 0x30, 0x0D, 0x06, 0x09, 0x2A, 0x86, 0x48, - 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, 0x00, 0x03, 0x82, - 0x02, 0x01, 0x00, 0x64, 0xD8, 0x59, 0x19, 0xC0, 0xB5, 0x79, - 0x9E, 0x58, 0x63, 0xAE, 0x8B, 0x28, 0x64, 0x81, 0xD9, 0xD2, - 0xCD, 0xE8, 0x26, 0x1F, 0x04, 0x09, 0x7B, 0x52, 0x0A, 0x7A, - 0x16, 0x70, 0xEE, 0x37, 0x8A, 0x6D, 0x7C, 0x74, 0x67, 0x51, - 0x2F, 0xCF, 0x97, 0xA1, 0xD6, 0x54, 0xA2, 0xA3, 0x93, 0xDD, - 0x2B, 0x63, 0x5E, 0x9F, 0x13, 0x56, 0x7F, 0x8C, 0xE5, 0x9B, - 0x49, 0x19, 0x78, 0xDB, 0x3D, 0x75, 0xFE, 0xB7, 0xB8, 0x57, - 0x92, 0x58, 0xFF, 0x84, 0x8B, 0xD1, 0x2F, 0xF4, 0xB0, 0x22, - 0xD2, 0xF9, 0xBB, 0x00, 0xDD, 0x3B, 0xD2, 0x7A, 0xB9, 0xD9, - 0x50, 0xE5, 0x90, 0x70, 0x2D, 0x77, 0xF2, 0x74, 0xC2, 0x40, - 0x2F, 0x39, 0x25, 0x5D, 0x8E, 0xDE, 0x11, 0xE1, 0xCF, 0xA7, - 0x8F, 0x8E, 0xBD, 0x2A, 0xAA, 0x2E, 0xA1, 0x14, 0x3D, 0x06, - 0x70, 0xC7, 0xC9, 0x58, 0x86, 0x9E, 0x4C, 0x86, 0x65, 0x9E, - 0x69, 0x62, 0x3E, 0x30, 0x22, 0xEB, 0xD5, 0x00, 0xD1, 0x1E, - 0x8C, 0xBA, 0xF2, 0x7B, 0xA3, 0x39, 0x77, 0xFE, 0x90, 0x42, - 0xB7, 0xA4, 0x98, 0x28, 0xD7, 0x82, 0x4A, 0x54, 0x1B, 0x27, - 0xC9, 0xCF, 0x09, 0xB5, 0x60, 0xB6, 0x09, 0x37, 0x40, 0xE9, - 0xA5, 0xCD, 0x3E, 0x80, 0x84, 0xC4, 0xC4, 0xB6, 0x63, 0x06, - 0xEA, 0x5C, 0x63, 0xF2, 0x2B, 0xEE, 0x00, 0x31, 0x52, 0xD8, - 0x6C, 0xCD, 0x6A, 0xD2, 0x57, 0xA0, 0x6B, 0xD5, 0xA7, 0x6E, - 0x4C, 0xCE, 0x3B, 0xFF, 0x44, 0x7D, 0x99, 0xA5, 0xE3, 0xFB, - 0x23, 0x91, 0x99, 0x8C, 0x19, 0xCE, 0x1F, 0xC1, 0xA1, 0x89, - 0xE3, 0xBC, 0xE8, 0x74, 0x2C, 0x3D, 0x80, 0xBC, 0x0C, 0x6C, - 0x6A, 0x39, 0xA6, 0x50, 0x4C, 0xD1, 0x25, 0x1E, 0xA6, 0x96, - 0xF4, 0x54, 0xFD, 0x2A, 0xCE, 0x3C, 0x59, 0xAA, 0x1C, 0x05, - 0xDF, 0xDF, 0x10, 0x9A, 0x2B, 0x52, 0x9C, 0xF1, 0xA8, 0x19, - 0xAC, 0x56, 0x03, 0x56, 0x1F, 0xC9, 0xA5, 0xE4, 0xAA, 0xBC, - 0xE2, 0x90, 0xC1, 0xC9, 0xAD, 0xF5, 0x94, 0x1B, 0x72, 0xA7, - 0xC9, 0x9E, 0x90, 0x26, 0x2E, 0x70, 0x48, 0x41, 0xB5, 0x2F, - 0x6C, 0x35, 0xCA, 0x30, 0xE3, 0xCA, 0x71, 0x5B, 0x97, 0x96, - 0x15, 0x6F, 0xB5, 0x4D, 0x43, 0xD1, 0x5A, 0x02, 0xD0, 0x21, - 0x48, 0xEE, 0x2B, 0xC7, 0x8D, 0xE1, 0x60, 0x92, 0x86, 0x8C, - 0x5E, 0x8D, 0x9C, 0xA1, 0x6A, 0x99, 0xC0, 0xD0, 0x3D, 0x3A, - 0x8C, 0x7E, 0xC3, 0x87, 0xB2, 0x81, 0x8B, 0xE9, 0xBD, 0xB0, - 0xD3, 0xF3, 0x6F, 0xF2, 0x89, 0x40, 0xB9, 0xD1, 0x5C, 0xD0, - 0x1C, 0x9D, 0xBF, 0x80, 0xFC, 0x75, 0x0A, 0x66, 0xC6, 0x5A, - 0xD1, 0x41, 0x15, 0x31, 0x07, 0x55, 0xF8, 0x00, 0x96, 0x77, - 0xB4, 0xA7, 0xDC, 0xD7, 0x62, 0x15, 0xED, 0x75, 0x7A, 0x3E, - 0xCD, 0xB9, 0xE0, 0x56, 0x7D, 0x38, 0x4C, 0x2E, 0xEC, 0xEF, - 0x00, 0x70, 0x93, 0x12, 0x0D, 0x25, 0x5A, 0xE7, 0xF8, 0x02, - 0x37, 0xE8, 0xDD, 0xBB, 0x7E, 0x61, 0x9F, 0xB2, 0xA8, 0x70, - 0xDA, 0x7F, 0x94, 0x7B, 0x29, 0xE0, 0xA4, 0x58, 0x01, 0x8D, - 0x43, 0xF1, 0x25, 0x16, 0x59, 0xFE, 0xD5, 0x21, 0x42, 0xEE, - 0xAB, 0xA8, 0x03, 0x3E, 0xEE, 0x1F, 0x74, 0x1C, 0x43, 0x2D, - 0x37, 0x0F, 0x05, 0x14, 0x29, 0x0D, 0xAC, 0xE8, 0xC7, 0x72, - 0x0E, 0x10, 0xB5, 0x9E, 0xF8, 0x80, 0x41, 0xD0, 0xA2, 0xAA, - 0x6C, 0x94, 0x26, 0x49, 0x91, 0xC7, 0x2C, 0x30, 0x04, 0x2A, - 0x91, 0xF0, 0xE6, 0x7F, 0x76, 0x71, 0x80, 0x09, 0x07, 0x00, - 0x98, 0xB7, 0xF1, 0x1F, 0x3C, 0x0C, 0xDB, 0x98, 0x0A, 0x22, - 0xCC, 0xAF, 0x6F, 0xE5, 0xC7, 0x0D, 0x26, 0xA1, 0x65, 0xB3, - 0x5D, 0x37, 0x04, 0xDE, 0xF4, 0x61, 0x91, 0x06, 0x06, 0xA4, - 0x9A, 0x65, 0x51, 0x8B, 0x3E + 0x30, 0x82, 0x07, 0x07, 0x30, 0x82, 0x04, 0xEF, 0xA0, 0x03, + 0x02, 0x01, 0x02, 0x02, 0x09, 0x00, 0xA0, 0x3E, 0xDB, 0xCF, + 0x97, 0x9A, 0x72, 0x8C, 0x30, 0x0D, 0x06, 0x09, 0x2A, 0x86, + 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, 0x00, 0x30, + 0x81, 0x9E, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, + 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, + 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, + 0x61, 0x6E, 0x61, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, + 0x04, 0x07, 0x0C, 0x07, 0x42, 0x6F, 0x7A, 0x65, 0x6D, 0x61, + 0x6E, 0x31, 0x15, 0x30, 0x13, 0x06, 0x03, 0x55, 0x04, 0x0A, + 0x0C, 0x0C, 0x77, 0x6F, 0x6C, 0x66, 0x53, 0x53, 0x4C, 0x5F, + 0x34, 0x30, 0x39, 0x36, 0x31, 0x19, 0x30, 0x17, 0x06, 0x03, + 0x55, 0x04, 0x0B, 0x0C, 0x10, 0x50, 0x72, 0x6F, 0x67, 0x72, + 0x61, 0x6D, 0x6D, 0x69, 0x6E, 0x67, 0x2D, 0x34, 0x30, 0x39, + 0x36, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, + 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, + 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, + 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, + 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, + 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, + 0x30, 0x1E, 0x17, 0x0D, 0x32, 0x31, 0x30, 0x32, 0x31, 0x30, + 0x31, 0x39, 0x34, 0x39, 0x35, 0x32, 0x5A, 0x17, 0x0D, 0x32, + 0x33, 0x31, 0x31, 0x30, 0x37, 0x31, 0x39, 0x34, 0x39, 0x35, + 0x32, 0x5A, 0x30, 0x81, 0x9E, 0x31, 0x0B, 0x30, 0x09, 0x06, + 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, + 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, + 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, 0x31, 0x10, 0x30, 0x0E, + 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, 0x07, 0x42, 0x6F, 0x7A, + 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x15, 0x30, 0x13, 0x06, 0x03, + 0x55, 0x04, 0x0A, 0x0C, 0x0C, 0x77, 0x6F, 0x6C, 0x66, 0x53, + 0x53, 0x4C, 0x5F, 0x34, 0x30, 0x39, 0x36, 0x31, 0x19, 0x30, + 0x17, 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x10, 0x50, 0x72, + 0x6F, 0x67, 0x72, 0x61, 0x6D, 0x6D, 0x69, 0x6E, 0x67, 0x2D, + 0x34, 0x30, 0x39, 0x36, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, + 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, + 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, + 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, + 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, + 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, + 0x63, 0x6F, 0x6D, 0x30, 0x82, 0x02, 0x22, 0x30, 0x0D, 0x06, + 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x01, + 0x05, 0x00, 0x03, 0x82, 0x02, 0x0F, 0x00, 0x30, 0x82, 0x02, + 0x0A, 0x02, 0x82, 0x02, 0x01, 0x00, 0xF5, 0xD0, 0x31, 0xE4, + 0x71, 0x59, 0x58, 0xB3, 0x07, 0x50, 0xDD, 0x16, 0x79, 0xFC, + 0xC6, 0x95, 0x50, 0xFC, 0x46, 0x0E, 0x57, 0x12, 0x86, 0x71, + 0x8D, 0xE3, 0x9B, 0x4A, 0x33, 0xEA, 0x4F, 0xD9, 0x17, 0x13, + 0x6D, 0x48, 0x69, 0xDF, 0x59, 0x11, 0x08, 0x02, 0x9D, 0xAF, + 0x2B, 0xC7, 0x30, 0xBE, 0x0C, 0xDC, 0x87, 0xD4, 0x5A, 0x12, + 0x09, 0x23, 0x5D, 0xE1, 0x76, 0x5A, 0x62, 0x37, 0x46, 0x74, + 0xEF, 0x03, 0x05, 0xBB, 0x1E, 0x6D, 0x29, 0x75, 0x6C, 0x2E, + 0x9D, 0x87, 0x0D, 0x8F, 0x87, 0xCB, 0x14, 0x95, 0x9B, 0xBE, + 0x17, 0x6B, 0x51, 0xD1, 0x4C, 0xDA, 0xD7, 0x91, 0x66, 0xC5, + 0x36, 0xEB, 0xE0, 0x07, 0x1A, 0x76, 0x4D, 0xB0, 0xFB, 0xC1, + 0xF5, 0x5E, 0x05, 0xDB, 0xBA, 0xCB, 0x25, 0xD9, 0x99, 0x13, + 0x1C, 0xC0, 0x35, 0xDC, 0x40, 0xE9, 0x36, 0xCD, 0xC4, 0xD5, + 0x7A, 0x41, 0x70, 0x0F, 0x36, 0xEB, 0xA5, 0x4E, 0x17, 0x05, + 0xD5, 0x75, 0x1B, 0x64, 0x62, 0x7A, 0x3F, 0x0D, 0x28, 0x48, + 0x6A, 0xE3, 0xAC, 0x9C, 0xA8, 0x8F, 0xE9, 0xED, 0xF7, 0xCD, + 0x24, 0xA0, 0xB1, 0xA0, 0x03, 0xAC, 0xE3, 0x03, 0xF5, 0x3F, + 0xD1, 0x96, 0xFF, 0x2A, 0x7E, 0x08, 0xB1, 0xD3, 0xE0, 0x18, + 0x14, 0xEC, 0x65, 0x37, 0x50, 0x43, 0xC2, 0x6A, 0x8C, 0xF4, + 0x5B, 0xFE, 0xC4, 0xCB, 0x8D, 0x3F, 0x81, 0x02, 0xF7, 0xC2, + 0xDD, 0xE4, 0xC1, 0x8E, 0x80, 0x0C, 0x04, 0x25, 0x2D, 0x80, + 0x5A, 0x2E, 0x0F, 0x22, 0x35, 0x4A, 0xF4, 0x85, 0xED, 0x51, + 0xD8, 0xAB, 0x6D, 0x8F, 0xA2, 0x3B, 0x24, 0x00, 0x6E, 0x81, + 0xE2, 0x1E, 0x76, 0xD6, 0xAC, 0x31, 0x12, 0xDB, 0xF3, 0x8E, + 0x07, 0xA1, 0xDE, 0x89, 0x4A, 0x39, 0x60, 0x77, 0xC5, 0xAA, + 0xF1, 0x51, 0xE6, 0x06, 0xF1, 0x95, 0x56, 0x2A, 0xE1, 0x8E, + 0x92, 0x30, 0x9F, 0xFE, 0x58, 0x44, 0xAC, 0x46, 0xF2, 0xFD, + 0x9A, 0xFC, 0xA8, 0x1D, 0xA1, 0xD3, 0x55, 0x37, 0x4A, 0x8B, + 0xFC, 0x9C, 0x33, 0xF8, 0xA7, 0x61, 0x48, 0x41, 0x7C, 0x9C, + 0x77, 0x3F, 0xF5, 0x80, 0x23, 0x7D, 0x43, 0xB4, 0xD5, 0x88, + 0x0A, 0xC9, 0x75, 0xD7, 0x44, 0x19, 0x4D, 0x77, 0x6C, 0x0B, + 0x0A, 0x49, 0xAA, 0x1C, 0x2F, 0xD6, 0x5A, 0x44, 0xA6, 0x47, + 0x4D, 0xE5, 0x36, 0x96, 0x40, 0x99, 0x2C, 0x56, 0x26, 0xB1, + 0xF2, 0x92, 0x31, 0x59, 0xD7, 0x2C, 0xD4, 0xB4, 0x21, 0xD6, + 0x65, 0x13, 0x0B, 0x3E, 0xFB, 0xFF, 0x04, 0xEB, 0xB9, 0x85, + 0xB9, 0xD8, 0xD8, 0x28, 0x4F, 0x5C, 0x17, 0x96, 0xA3, 0x51, + 0xBE, 0xFE, 0x7D, 0x0B, 0x1B, 0x48, 0x40, 0x25, 0x76, 0x94, + 0xDC, 0x41, 0xFB, 0xBF, 0x73, 0x76, 0xDA, 0xEB, 0xB3, 0x62, + 0xE7, 0xC1, 0xC8, 0x54, 0x6A, 0x93, 0xE1, 0x8D, 0x31, 0xE8, + 0x3E, 0x3E, 0xDF, 0xBC, 0x87, 0x02, 0x30, 0x22, 0x57, 0xC4, + 0xE0, 0x18, 0x7A, 0xD3, 0xAE, 0xE4, 0x02, 0x9B, 0xAA, 0xBD, + 0x4E, 0x49, 0x47, 0x72, 0xE9, 0x8D, 0x13, 0x2D, 0x54, 0x9B, + 0x00, 0xA7, 0x91, 0x61, 0x71, 0xC9, 0xCC, 0x48, 0x4F, 0xEE, + 0xDF, 0x5E, 0x1B, 0x1A, 0xDF, 0x67, 0xD3, 0x20, 0xE6, 0x44, + 0x45, 0x98, 0x7E, 0xE7, 0x0E, 0x63, 0x16, 0x83, 0xC9, 0x26, + 0x5D, 0x90, 0xC1, 0xE5, 0x2A, 0x5C, 0x45, 0x54, 0x13, 0xB2, + 0x81, 0x18, 0x06, 0x20, 0x2E, 0x2E, 0x66, 0x5A, 0xB5, 0x7B, + 0x6E, 0xD6, 0x0C, 0x4E, 0x89, 0x01, 0x56, 0x70, 0xBB, 0xAE, + 0xDE, 0xE9, 0x99, 0x5E, 0xD1, 0xB9, 0x3A, 0xB7, 0x6C, 0x17, + 0xB6, 0x03, 0xA9, 0x08, 0xDD, 0x9C, 0xF4, 0x14, 0xC9, 0xC9, + 0x59, 0x39, 0x72, 0xD4, 0x7E, 0x02, 0x37, 0x31, 0xCD, 0x0E, + 0xA7, 0x3D, 0xF8, 0xF2, 0xCF, 0x6B, 0x15, 0xAB, 0x02, 0x03, + 0x01, 0x00, 0x01, 0xA3, 0x82, 0x01, 0x44, 0x30, 0x82, 0x01, + 0x40, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x0E, 0x04, 0x16, + 0x04, 0x14, 0xFA, 0x54, 0x89, 0x67, 0xE5, 0x5F, 0xB7, 0x31, + 0x40, 0xEA, 0xFD, 0xE7, 0xF6, 0xA3, 0xC6, 0x5A, 0x56, 0x16, + 0xA5, 0x6E, 0x30, 0x81, 0xD3, 0x06, 0x03, 0x55, 0x1D, 0x23, + 0x04, 0x81, 0xCB, 0x30, 0x81, 0xC8, 0x80, 0x14, 0xFA, 0x54, + 0x89, 0x67, 0xE5, 0x5F, 0xB7, 0x31, 0x40, 0xEA, 0xFD, 0xE7, + 0xF6, 0xA3, 0xC6, 0x5A, 0x56, 0x16, 0xA5, 0x6E, 0xA1, 0x81, + 0xA4, 0xA4, 0x81, 0xA1, 0x30, 0x81, 0x9E, 0x31, 0x0B, 0x30, + 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, + 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, + 0x07, 0x4D, 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, 0x31, 0x10, + 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, 0x07, 0x42, + 0x6F, 0x7A, 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x15, 0x30, 0x13, + 0x06, 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x0C, 0x77, 0x6F, 0x6C, + 0x66, 0x53, 0x53, 0x4C, 0x5F, 0x34, 0x30, 0x39, 0x36, 0x31, + 0x19, 0x30, 0x17, 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x10, + 0x50, 0x72, 0x6F, 0x67, 0x72, 0x61, 0x6D, 0x6D, 0x69, 0x6E, + 0x67, 0x2D, 0x34, 0x30, 0x39, 0x36, 0x31, 0x18, 0x30, 0x16, + 0x06, 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, + 0x2E, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, + 0x6F, 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, + 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, + 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, + 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x09, 0x00, 0xA0, 0x3E, + 0xDB, 0xCF, 0x97, 0x9A, 0x72, 0x8C, 0x30, 0x0C, 0x06, 0x03, + 0x55, 0x1D, 0x13, 0x04, 0x05, 0x30, 0x03, 0x01, 0x01, 0xFF, + 0x30, 0x1C, 0x06, 0x03, 0x55, 0x1D, 0x11, 0x04, 0x15, 0x30, + 0x13, 0x82, 0x0B, 0x65, 0x78, 0x61, 0x6D, 0x70, 0x6C, 0x65, + 0x2E, 0x63, 0x6F, 0x6D, 0x87, 0x04, 0x7F, 0x00, 0x00, 0x01, + 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x25, 0x04, 0x16, 0x30, + 0x14, 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, 0x05, 0x07, 0x03, + 0x01, 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, 0x05, 0x07, 0x03, + 0x02, 0x30, 0x0D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, + 0x0D, 0x01, 0x01, 0x0B, 0x05, 0x00, 0x03, 0x82, 0x02, 0x01, + 0x00, 0x17, 0xAB, 0x22, 0x61, 0x05, 0x6D, 0x3A, 0xC0, 0x0D, + 0x6B, 0xD9, 0x15, 0x82, 0x11, 0xCF, 0xE7, 0xF8, 0x65, 0xDA, + 0xC7, 0xEF, 0xDA, 0x0F, 0x50, 0x75, 0xBD, 0x55, 0xCF, 0x3D, + 0x50, 0xDD, 0xD4, 0x0D, 0x2C, 0x04, 0x48, 0xA8, 0x25, 0x3A, + 0xB9, 0xC4, 0xCE, 0x48, 0x7E, 0xB8, 0x63, 0xCD, 0xCD, 0xCE, + 0xBC, 0x50, 0x26, 0xDC, 0x6D, 0xC2, 0x1E, 0xD1, 0x71, 0x3A, + 0x2F, 0xDB, 0xE5, 0x03, 0x6B, 0x73, 0x55, 0x23, 0x70, 0x76, + 0x1E, 0x08, 0x2A, 0x92, 0x7B, 0xD6, 0x6A, 0xEF, 0x17, 0xA0, + 0xF3, 0x8C, 0xEA, 0xEB, 0xC4, 0x2E, 0xCB, 0xD4, 0xD9, 0xD5, + 0xAB, 0xF7, 0xE6, 0x8D, 0xEC, 0xD9, 0x97, 0xA1, 0x56, 0xA7, + 0x0B, 0x5D, 0xE5, 0x3F, 0x1F, 0x5E, 0x6A, 0x7A, 0xA4, 0x64, + 0xD7, 0xB2, 0x42, 0x1A, 0x1E, 0x49, 0x37, 0x93, 0xBC, 0xBE, + 0x13, 0xA8, 0xFB, 0xB1, 0x93, 0x7B, 0xA8, 0x2B, 0x49, 0x90, + 0x43, 0x84, 0x24, 0x60, 0x44, 0xFC, 0x32, 0x74, 0x85, 0x0E, + 0x1B, 0xF8, 0x3A, 0x92, 0x3D, 0xAA, 0x25, 0x1B, 0x9F, 0x97, + 0x31, 0x95, 0x97, 0xC5, 0x3D, 0x51, 0xDD, 0xB6, 0xD5, 0x4A, + 0x7E, 0x41, 0xB3, 0x90, 0x83, 0x7C, 0x98, 0xFA, 0xCB, 0x22, + 0x33, 0xA5, 0xF4, 0x32, 0x74, 0xBD, 0x3E, 0xB1, 0x3B, 0x34, + 0xF9, 0xC3, 0x3F, 0xBE, 0xDB, 0x0E, 0xD9, 0x2F, 0x1A, 0xF9, + 0xD2, 0x4F, 0x14, 0x53, 0x63, 0xF2, 0x21, 0xA3, 0xE9, 0xC3, + 0xAD, 0x04, 0x6E, 0xE7, 0xAD, 0x1F, 0x6B, 0xCE, 0x4E, 0x35, + 0x4A, 0x61, 0x84, 0xB9, 0x61, 0x65, 0x1D, 0xA2, 0xD7, 0xA1, + 0xE6, 0x74, 0x08, 0x15, 0x38, 0x75, 0xB0, 0x23, 0x70, 0x22, + 0x15, 0x59, 0x2C, 0x48, 0xF0, 0xDA, 0x9A, 0x99, 0xD4, 0x2B, + 0x83, 0xDF, 0x9A, 0x93, 0x78, 0x45, 0xB9, 0x84, 0x5C, 0x7E, + 0x71, 0x90, 0xDA, 0x56, 0x1C, 0x9F, 0x57, 0xED, 0x76, 0xF7, + 0x17, 0xE5, 0xD2, 0x01, 0x90, 0x99, 0x5F, 0x4C, 0x07, 0x49, + 0x07, 0x82, 0x75, 0x92, 0x44, 0x7A, 0xFE, 0x9B, 0xA7, 0x4D, + 0xEC, 0xC8, 0xDC, 0x46, 0x67, 0x28, 0x04, 0x8B, 0x08, 0x17, + 0x94, 0x13, 0xE9, 0xA0, 0xD2, 0xB2, 0x26, 0x56, 0x27, 0x60, + 0x94, 0x5A, 0x50, 0x5C, 0xCF, 0x34, 0x4D, 0x3F, 0x35, 0xE7, + 0x12, 0x5D, 0xC5, 0x32, 0x00, 0x2F, 0xE0, 0x1D, 0x09, 0xE5, + 0x36, 0x8D, 0x77, 0x93, 0xF6, 0xE5, 0x62, 0xB4, 0xA3, 0x9B, + 0xC6, 0x7C, 0xE6, 0x3D, 0xD5, 0x38, 0x33, 0x5F, 0x23, 0x5B, + 0x81, 0x2E, 0x24, 0x26, 0x9E, 0x98, 0xA8, 0xAF, 0x04, 0x3D, + 0x65, 0x3F, 0x71, 0x88, 0x48, 0x44, 0x5C, 0x1A, 0x11, 0x0E, + 0x1B, 0xE1, 0x81, 0xB1, 0xB6, 0x66, 0xE6, 0x3C, 0x13, 0x67, + 0xD6, 0x6B, 0xA3, 0xF3, 0xB7, 0xF6, 0x9F, 0x14, 0xA6, 0x87, + 0x7F, 0x2B, 0x14, 0x31, 0x22, 0x7A, 0xF5, 0x0D, 0x44, 0xE6, + 0xA3, 0x1A, 0xD6, 0xD2, 0xDC, 0x88, 0x71, 0x37, 0x28, 0x11, + 0x6C, 0xEF, 0x95, 0xAB, 0x1D, 0xC5, 0xC3, 0x9A, 0xEF, 0x1A, + 0x54, 0x11, 0x92, 0x8E, 0x89, 0x43, 0x03, 0x26, 0xD0, 0xE9, + 0x63, 0x33, 0xFE, 0x79, 0x4C, 0xA6, 0x6F, 0xC4, 0x58, 0x58, + 0x2E, 0xB6, 0xAB, 0x57, 0xA0, 0x39, 0x4D, 0xFF, 0x88, 0xC0, + 0x23, 0x2C, 0x3B, 0xE3, 0x9A, 0xDF, 0x48, 0xD3, 0x17, 0x45, + 0x5D, 0x36, 0x4E, 0x00, 0x58, 0x72, 0xC3, 0xEF, 0xE7, 0x76, + 0x0B, 0xF8, 0x19, 0xA8, 0x5F, 0xF6, 0x53, 0x98, 0x49, 0x2B, + 0x52, 0xB5, 0x8E, 0xA5, 0xD8, 0x73, 0x6E, 0x3C, 0x23, 0x23, + 0x06, 0x86, 0x25, 0x6B, 0x0D, 0x3B, 0xF2, 0x9A, 0x17, 0x33, + 0xA4, 0x4E, 0xF5, 0x6B, 0xDE, 0xB3, 0x64, 0x20, 0x58, 0xC6, + 0x6D, 0x22, 0xA9, 0xAE, 0xF4, 0x09, 0x9D, 0x0D, 0x6E, 0x9F, + 0x96, 0x2A, 0x9E }; static const int sizeof_client_cert_der_4096 = sizeof(client_cert_der_4096); @@ -3349,93 +3372,91 @@ static const int sizeof_ecc_clikeypub_der_256 = sizeof(ecc_clikeypub_der_256); /* ./certs/client-ecc-cert.der, ECC */ static const unsigned char cliecc_cert_der_256[] = { - 0x30, 0x82, 0x03, 0x5F, 0x30, 0x82, 0x03, 0x04, 0xA0, 0x03, - 0x02, 0x01, 0x02, 0x02, 0x14, 0x61, 0xB3, 0x1E, 0x59, 0xF3, - 0x68, 0x6C, 0xA4, 0x79, 0x42, 0x83, 0x2F, 0x1A, 0x50, 0x71, - 0x03, 0xBE, 0x32, 0xAA, 0x2C, 0x30, 0x0A, 0x06, 0x08, 0x2A, - 0x86, 0x48, 0xCE, 0x3D, 0x04, 0x03, 0x02, 0x30, 0x81, 0x8D, - 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, - 0x02, 0x55, 0x53, 0x31, 0x0F, 0x30, 0x0D, 0x06, 0x03, 0x55, - 0x04, 0x08, 0x0C, 0x06, 0x4F, 0x72, 0x65, 0x67, 0x6F, 0x6E, - 0x31, 0x0E, 0x30, 0x0C, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, - 0x05, 0x53, 0x61, 0x6C, 0x65, 0x6D, 0x31, 0x13, 0x30, 0x11, - 0x06, 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x0A, 0x43, 0x6C, 0x69, - 0x65, 0x6E, 0x74, 0x20, 0x45, 0x43, 0x43, 0x31, 0x0D, 0x30, - 0x0B, 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x04, 0x46, 0x61, - 0x73, 0x74, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, - 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, - 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, - 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, - 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, - 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, - 0x6D, 0x30, 0x1E, 0x17, 0x0D, 0x32, 0x30, 0x30, 0x36, 0x31, - 0x39, 0x31, 0x33, 0x32, 0x33, 0x34, 0x31, 0x5A, 0x17, 0x0D, - 0x32, 0x33, 0x30, 0x33, 0x31, 0x36, 0x31, 0x33, 0x32, 0x33, - 0x34, 0x31, 0x5A, 0x30, 0x81, 0x8D, 0x31, 0x0B, 0x30, 0x09, - 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, - 0x0F, 0x30, 0x0D, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x06, - 0x4F, 0x72, 0x65, 0x67, 0x6F, 0x6E, 0x31, 0x0E, 0x30, 0x0C, - 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, 0x05, 0x53, 0x61, 0x6C, - 0x65, 0x6D, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55, 0x04, - 0x0A, 0x0C, 0x0A, 0x43, 0x6C, 0x69, 0x65, 0x6E, 0x74, 0x20, - 0x45, 0x43, 0x43, 0x31, 0x0D, 0x30, 0x0B, 0x06, 0x03, 0x55, - 0x04, 0x0B, 0x0C, 0x04, 0x46, 0x61, 0x73, 0x74, 0x31, 0x18, - 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, - 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, - 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, - 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, - 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, - 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x30, 0x59, 0x30, - 0x13, 0x06, 0x07, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x02, 0x01, - 0x06, 0x08, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x01, 0x07, - 0x03, 0x42, 0x00, 0x04, 0x55, 0xBF, 0xF4, 0x0F, 0x44, 0x50, - 0x9A, 0x3D, 0xCE, 0x9B, 0xB7, 0xF0, 0xC5, 0x4D, 0xF5, 0x70, - 0x7B, 0xD4, 0xEC, 0x24, 0x8E, 0x19, 0x80, 0xEC, 0x5A, 0x4C, - 0xA2, 0x24, 0x03, 0x62, 0x2C, 0x9B, 0xDA, 0xEF, 0xA2, 0x35, - 0x12, 0x43, 0x84, 0x76, 0x16, 0xC6, 0x56, 0x95, 0x06, 0xCC, - 0x01, 0xA9, 0xBD, 0xF6, 0x75, 0x1A, 0x42, 0xF7, 0xBD, 0xA9, - 0xB2, 0x36, 0x22, 0x5F, 0xC7, 0x5D, 0x7F, 0xB4, 0xA3, 0x82, - 0x01, 0x3E, 0x30, 0x82, 0x01, 0x3A, 0x30, 0x1D, 0x06, 0x03, - 0x55, 0x1D, 0x0E, 0x04, 0x16, 0x04, 0x14, 0xEB, 0xD4, 0x4B, - 0x59, 0x6B, 0x95, 0x61, 0x3F, 0x51, 0x57, 0xB6, 0x04, 0x4D, - 0x89, 0x41, 0x88, 0x44, 0x5C, 0xAB, 0xF2, 0x30, 0x81, 0xCD, - 0x06, 0x03, 0x55, 0x1D, 0x23, 0x04, 0x81, 0xC5, 0x30, 0x81, - 0xC2, 0x80, 0x14, 0xEB, 0xD4, 0x4B, 0x59, 0x6B, 0x95, 0x61, - 0x3F, 0x51, 0x57, 0xB6, 0x04, 0x4D, 0x89, 0x41, 0x88, 0x44, - 0x5C, 0xAB, 0xF2, 0xA1, 0x81, 0x93, 0xA4, 0x81, 0x90, 0x30, - 0x81, 0x8D, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, - 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x0F, 0x30, 0x0D, 0x06, - 0x03, 0x55, 0x04, 0x08, 0x0C, 0x06, 0x4F, 0x72, 0x65, 0x67, - 0x6F, 0x6E, 0x31, 0x0E, 0x30, 0x0C, 0x06, 0x03, 0x55, 0x04, - 0x07, 0x0C, 0x05, 0x53, 0x61, 0x6C, 0x65, 0x6D, 0x31, 0x13, - 0x30, 0x11, 0x06, 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x0A, 0x43, - 0x6C, 0x69, 0x65, 0x6E, 0x74, 0x20, 0x45, 0x43, 0x43, 0x31, - 0x0D, 0x30, 0x0B, 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x04, - 0x46, 0x61, 0x73, 0x74, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, - 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, + 0x30, 0x82, 0x03, 0x49, 0x30, 0x82, 0x02, 0xEE, 0xA0, 0x03, + 0x02, 0x01, 0x02, 0x02, 0x09, 0x00, 0xE7, 0x4A, 0x4F, 0xE5, + 0x56, 0x97, 0xCA, 0xC3, 0x30, 0x0A, 0x06, 0x08, 0x2A, 0x86, + 0x48, 0xCE, 0x3D, 0x04, 0x03, 0x02, 0x30, 0x81, 0x8D, 0x31, + 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, + 0x55, 0x53, 0x31, 0x0F, 0x30, 0x0D, 0x06, 0x03, 0x55, 0x04, + 0x08, 0x0C, 0x06, 0x4F, 0x72, 0x65, 0x67, 0x6F, 0x6E, 0x31, + 0x0E, 0x30, 0x0C, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, 0x05, + 0x53, 0x61, 0x6C, 0x65, 0x6D, 0x31, 0x13, 0x30, 0x11, 0x06, + 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x0A, 0x43, 0x6C, 0x69, 0x65, + 0x6E, 0x74, 0x20, 0x45, 0x43, 0x43, 0x31, 0x0D, 0x30, 0x0B, + 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x04, 0x46, 0x61, 0x73, + 0x74, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, + 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, + 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, + 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, + 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, - 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, - 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, - 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, - 0x63, 0x6F, 0x6D, 0x82, 0x14, 0x61, 0xB3, 0x1E, 0x59, 0xF3, - 0x68, 0x6C, 0xA4, 0x79, 0x42, 0x83, 0x2F, 0x1A, 0x50, 0x71, - 0x03, 0xBE, 0x32, 0xAA, 0x2C, 0x30, 0x0C, 0x06, 0x03, 0x55, - 0x1D, 0x13, 0x04, 0x05, 0x30, 0x03, 0x01, 0x01, 0xFF, 0x30, - 0x1C, 0x06, 0x03, 0x55, 0x1D, 0x11, 0x04, 0x15, 0x30, 0x13, - 0x82, 0x0B, 0x65, 0x78, 0x61, 0x6D, 0x70, 0x6C, 0x65, 0x2E, - 0x63, 0x6F, 0x6D, 0x87, 0x04, 0x7F, 0x00, 0x00, 0x01, 0x30, - 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x25, 0x04, 0x16, 0x30, 0x14, - 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, 0x05, 0x07, 0x03, 0x01, - 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, 0x05, 0x07, 0x03, 0x02, - 0x30, 0x0A, 0x06, 0x08, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x04, - 0x03, 0x02, 0x03, 0x49, 0x00, 0x30, 0x46, 0x02, 0x21, 0x00, - 0xE4, 0xA0, 0x23, 0x26, 0x2B, 0x0B, 0x42, 0x0F, 0x97, 0x37, - 0x6D, 0xCB, 0x14, 0x23, 0xC3, 0xC3, 0xE6, 0x44, 0xCF, 0x5F, - 0x4C, 0x26, 0xA3, 0x72, 0x64, 0x7A, 0x9C, 0xCB, 0x64, 0xAB, - 0xA6, 0xBE, 0x02, 0x21, 0x00, 0xAA, 0xC5, 0xA3, 0x50, 0xF6, - 0xF1, 0xA5, 0xDB, 0x05, 0xE0, 0x75, 0xD2, 0xF7, 0xBA, 0x49, - 0x5F, 0x8F, 0x7D, 0x1C, 0x44, 0xB1, 0x6E, 0xDF, 0xC8, 0xDA, - 0x10, 0x48, 0x2D, 0x53, 0x08, 0xA8, 0xB4 + 0x30, 0x1E, 0x17, 0x0D, 0x32, 0x31, 0x30, 0x32, 0x31, 0x30, + 0x31, 0x39, 0x34, 0x39, 0x35, 0x33, 0x5A, 0x17, 0x0D, 0x32, + 0x33, 0x31, 0x31, 0x30, 0x37, 0x31, 0x39, 0x34, 0x39, 0x35, + 0x33, 0x5A, 0x30, 0x81, 0x8D, 0x31, 0x0B, 0x30, 0x09, 0x06, + 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x0F, + 0x30, 0x0D, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x06, 0x4F, + 0x72, 0x65, 0x67, 0x6F, 0x6E, 0x31, 0x0E, 0x30, 0x0C, 0x06, + 0x03, 0x55, 0x04, 0x07, 0x0C, 0x05, 0x53, 0x61, 0x6C, 0x65, + 0x6D, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55, 0x04, 0x0A, + 0x0C, 0x0A, 0x43, 0x6C, 0x69, 0x65, 0x6E, 0x74, 0x20, 0x45, + 0x43, 0x43, 0x31, 0x0D, 0x30, 0x0B, 0x06, 0x03, 0x55, 0x04, + 0x0B, 0x0C, 0x04, 0x46, 0x61, 0x73, 0x74, 0x31, 0x18, 0x30, + 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, + 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, + 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, + 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, + 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, + 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x30, 0x59, 0x30, 0x13, + 0x06, 0x07, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x02, 0x01, 0x06, + 0x08, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x01, 0x07, 0x03, + 0x42, 0x00, 0x04, 0x55, 0xBF, 0xF4, 0x0F, 0x44, 0x50, 0x9A, + 0x3D, 0xCE, 0x9B, 0xB7, 0xF0, 0xC5, 0x4D, 0xF5, 0x70, 0x7B, + 0xD4, 0xEC, 0x24, 0x8E, 0x19, 0x80, 0xEC, 0x5A, 0x4C, 0xA2, + 0x24, 0x03, 0x62, 0x2C, 0x9B, 0xDA, 0xEF, 0xA2, 0x35, 0x12, + 0x43, 0x84, 0x76, 0x16, 0xC6, 0x56, 0x95, 0x06, 0xCC, 0x01, + 0xA9, 0xBD, 0xF6, 0x75, 0x1A, 0x42, 0xF7, 0xBD, 0xA9, 0xB2, + 0x36, 0x22, 0x5F, 0xC7, 0x5D, 0x7F, 0xB4, 0xA3, 0x82, 0x01, + 0x33, 0x30, 0x82, 0x01, 0x2F, 0x30, 0x1D, 0x06, 0x03, 0x55, + 0x1D, 0x0E, 0x04, 0x16, 0x04, 0x14, 0xEB, 0xD4, 0x4B, 0x59, + 0x6B, 0x95, 0x61, 0x3F, 0x51, 0x57, 0xB6, 0x04, 0x4D, 0x89, + 0x41, 0x88, 0x44, 0x5C, 0xAB, 0xF2, 0x30, 0x81, 0xC2, 0x06, + 0x03, 0x55, 0x1D, 0x23, 0x04, 0x81, 0xBA, 0x30, 0x81, 0xB7, + 0x80, 0x14, 0xEB, 0xD4, 0x4B, 0x59, 0x6B, 0x95, 0x61, 0x3F, + 0x51, 0x57, 0xB6, 0x04, 0x4D, 0x89, 0x41, 0x88, 0x44, 0x5C, + 0xAB, 0xF2, 0xA1, 0x81, 0x93, 0xA4, 0x81, 0x90, 0x30, 0x81, + 0x8D, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, + 0x13, 0x02, 0x55, 0x53, 0x31, 0x0F, 0x30, 0x0D, 0x06, 0x03, + 0x55, 0x04, 0x08, 0x0C, 0x06, 0x4F, 0x72, 0x65, 0x67, 0x6F, + 0x6E, 0x31, 0x0E, 0x30, 0x0C, 0x06, 0x03, 0x55, 0x04, 0x07, + 0x0C, 0x05, 0x53, 0x61, 0x6C, 0x65, 0x6D, 0x31, 0x13, 0x30, + 0x11, 0x06, 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x0A, 0x43, 0x6C, + 0x69, 0x65, 0x6E, 0x74, 0x20, 0x45, 0x43, 0x43, 0x31, 0x0D, + 0x30, 0x0B, 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x04, 0x46, + 0x61, 0x73, 0x74, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, + 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, + 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x31, + 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, + 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, + 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, + 0x6F, 0x6D, 0x82, 0x09, 0x00, 0xE7, 0x4A, 0x4F, 0xE5, 0x56, + 0x97, 0xCA, 0xC3, 0x30, 0x0C, 0x06, 0x03, 0x55, 0x1D, 0x13, + 0x04, 0x05, 0x30, 0x03, 0x01, 0x01, 0xFF, 0x30, 0x1C, 0x06, + 0x03, 0x55, 0x1D, 0x11, 0x04, 0x15, 0x30, 0x13, 0x82, 0x0B, + 0x65, 0x78, 0x61, 0x6D, 0x70, 0x6C, 0x65, 0x2E, 0x63, 0x6F, + 0x6D, 0x87, 0x04, 0x7F, 0x00, 0x00, 0x01, 0x30, 0x1D, 0x06, + 0x03, 0x55, 0x1D, 0x25, 0x04, 0x16, 0x30, 0x14, 0x06, 0x08, + 0x2B, 0x06, 0x01, 0x05, 0x05, 0x07, 0x03, 0x01, 0x06, 0x08, + 0x2B, 0x06, 0x01, 0x05, 0x05, 0x07, 0x03, 0x02, 0x30, 0x0A, + 0x06, 0x08, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x04, 0x03, 0x02, + 0x03, 0x49, 0x00, 0x30, 0x46, 0x02, 0x21, 0x00, 0xE3, 0xBB, + 0xCA, 0x0E, 0x31, 0x2D, 0x39, 0x1D, 0x94, 0x25, 0x81, 0x90, + 0xD5, 0x11, 0xF9, 0x09, 0x6D, 0x58, 0x16, 0x23, 0xBE, 0x9F, + 0xA9, 0x18, 0x64, 0x83, 0x3C, 0x25, 0x03, 0x58, 0x58, 0x39, + 0x02, 0x21, 0x00, 0xA4, 0xAA, 0xB3, 0xF0, 0x09, 0xC9, 0x0C, + 0x2F, 0xF7, 0xB1, 0xD4, 0x8E, 0x9F, 0xA6, 0xB6, 0xAB, 0x1A, + 0xC7, 0x37, 0xED, 0x70, 0x4D, 0x34, 0x04, 0xA0, 0x9B, 0x3D, + 0x84, 0x86, 0x10, 0xA0, 0xF0 }; static const int sizeof_cliecc_cert_der_256 = sizeof(cliecc_cert_der_256); @@ -3477,103 +3498,100 @@ static const int sizeof_ecc_key_pub_der_256 = sizeof(ecc_key_pub_der_256); /* ./certs/server-ecc-comp.der, ECC */ static const unsigned char serv_ecc_comp_der_256[] = { - 0x30, 0x82, 0x03, 0x77, 0x30, 0x82, 0x03, 0x1D, 0xA0, 0x03, - 0x02, 0x01, 0x02, 0x02, 0x14, 0x2C, 0x04, 0x53, 0x2F, 0xC3, - 0x1B, 0x46, 0x1C, 0xFC, 0xB7, 0x48, 0x3C, 0x25, 0xED, 0xD8, - 0xDE, 0x07, 0x8F, 0xE0, 0xAA, 0x30, 0x0A, 0x06, 0x08, 0x2A, - 0x86, 0x48, 0xCE, 0x3D, 0x04, 0x03, 0x02, 0x30, 0x81, 0xA0, - 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, - 0x02, 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, - 0x04, 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, 0x61, 0x6E, - 0x61, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x07, - 0x0C, 0x07, 0x42, 0x6F, 0x7A, 0x65, 0x6D, 0x61, 0x6E, 0x31, - 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x0F, - 0x45, 0x6C, 0x6C, 0x69, 0x70, 0x74, 0x69, 0x63, 0x20, 0x2D, - 0x20, 0x63, 0x6F, 0x6D, 0x70, 0x31, 0x18, 0x30, 0x16, 0x06, - 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x0F, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x20, 0x45, 0x43, 0x43, 0x2D, 0x63, 0x6F, 0x6D, - 0x70, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, - 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, - 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, - 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, - 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, - 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, - 0x30, 0x1E, 0x17, 0x0D, 0x32, 0x30, 0x30, 0x36, 0x31, 0x39, - 0x31, 0x33, 0x32, 0x33, 0x34, 0x31, 0x5A, 0x17, 0x0D, 0x32, - 0x33, 0x30, 0x33, 0x31, 0x36, 0x31, 0x33, 0x32, 0x33, 0x34, - 0x31, 0x5A, 0x30, 0x81, 0xA0, 0x31, 0x0B, 0x30, 0x09, 0x06, - 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, - 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, - 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, 0x31, 0x10, 0x30, 0x0E, - 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, 0x07, 0x42, 0x6F, 0x7A, - 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, - 0x55, 0x04, 0x0A, 0x0C, 0x0F, 0x45, 0x6C, 0x6C, 0x69, 0x70, - 0x74, 0x69, 0x63, 0x20, 0x2D, 0x20, 0x63, 0x6F, 0x6D, 0x70, - 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, - 0x0F, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x20, 0x45, 0x43, - 0x43, 0x2D, 0x63, 0x6F, 0x6D, 0x70, 0x31, 0x18, 0x30, 0x16, - 0x06, 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, - 0x2E, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, - 0x6F, 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, - 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, - 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, - 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x30, 0x39, 0x30, 0x13, 0x06, - 0x07, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x02, 0x01, 0x06, 0x08, - 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x01, 0x07, 0x03, 0x22, - 0x00, 0x02, 0xBB, 0x33, 0xAC, 0x4C, 0x27, 0x50, 0x4A, 0xC6, - 0x4A, 0xA5, 0x04, 0xC3, 0x3C, 0xDE, 0x9F, 0x36, 0xDB, 0x72, - 0x2D, 0xCE, 0x94, 0xEA, 0x2B, 0xFA, 0xCB, 0x20, 0x09, 0x39, - 0x2C, 0x16, 0xE8, 0x61, 0xA3, 0x82, 0x01, 0x51, 0x30, 0x82, - 0x01, 0x4D, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x0E, 0x04, - 0x16, 0x04, 0x14, 0x8C, 0x38, 0x3A, 0x6B, 0xB8, 0x24, 0xB7, - 0xDF, 0x6E, 0xF4, 0x59, 0xAC, 0x56, 0x4E, 0xAA, 0xE2, 0x58, - 0xA6, 0x5A, 0x18, 0x30, 0x81, 0xE0, 0x06, 0x03, 0x55, 0x1D, - 0x23, 0x04, 0x81, 0xD8, 0x30, 0x81, 0xD5, 0x80, 0x14, 0x8C, - 0x38, 0x3A, 0x6B, 0xB8, 0x24, 0xB7, 0xDF, 0x6E, 0xF4, 0x59, - 0xAC, 0x56, 0x4E, 0xAA, 0xE2, 0x58, 0xA6, 0x5A, 0x18, 0xA1, - 0x81, 0xA6, 0xA4, 0x81, 0xA3, 0x30, 0x81, 0xA0, 0x31, 0x0B, - 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, - 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, - 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, 0x31, - 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, 0x07, - 0x42, 0x6F, 0x7A, 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x18, 0x30, - 0x16, 0x06, 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x0F, 0x45, 0x6C, - 0x6C, 0x69, 0x70, 0x74, 0x69, 0x63, 0x20, 0x2D, 0x20, 0x63, - 0x6F, 0x6D, 0x70, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, - 0x04, 0x0B, 0x0C, 0x0F, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x20, 0x45, 0x43, 0x43, 0x2D, 0x63, 0x6F, 0x6D, 0x70, 0x31, - 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, - 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, - 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, - 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, - 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, - 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x14, - 0x2C, 0x04, 0x53, 0x2F, 0xC3, 0x1B, 0x46, 0x1C, 0xFC, 0xB7, - 0x48, 0x3C, 0x25, 0xED, 0xD8, 0xDE, 0x07, 0x8F, 0xE0, 0xAA, - 0x30, 0x0C, 0x06, 0x03, 0x55, 0x1D, 0x13, 0x04, 0x05, 0x30, - 0x03, 0x01, 0x01, 0xFF, 0x30, 0x1C, 0x06, 0x03, 0x55, 0x1D, - 0x11, 0x04, 0x15, 0x30, 0x13, 0x82, 0x0B, 0x65, 0x78, 0x61, - 0x6D, 0x70, 0x6C, 0x65, 0x2E, 0x63, 0x6F, 0x6D, 0x87, 0x04, - 0x7F, 0x00, 0x00, 0x01, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, - 0x25, 0x04, 0x16, 0x30, 0x14, 0x06, 0x08, 0x2B, 0x06, 0x01, - 0x05, 0x05, 0x07, 0x03, 0x01, 0x06, 0x08, 0x2B, 0x06, 0x01, - 0x05, 0x05, 0x07, 0x03, 0x02, 0x30, 0x0A, 0x06, 0x08, 0x2A, - 0x86, 0x48, 0xCE, 0x3D, 0x04, 0x03, 0x02, 0x03, 0x48, 0x00, - 0x30, 0x45, 0x02, 0x21, 0x00, 0xF4, 0xCC, 0x35, 0x1B, 0x98, - 0x49, 0xE9, 0xB2, 0xA5, 0x86, 0xDF, 0x32, 0xBB, 0xB4, 0x12, - 0x64, 0xAC, 0xA1, 0xDD, 0xCF, 0x09, 0x87, 0x48, 0x6A, 0x1D, - 0xA0, 0x44, 0x25, 0x12, 0x2A, 0xB6, 0x62, 0x02, 0x20, 0x2D, - 0x89, 0xDE, 0xEC, 0x20, 0x13, 0xAD, 0x22, 0x8E, 0xD1, 0xFF, - 0xF2, 0x96, 0x1D, 0xFB, 0xF5, 0xCD, 0xFD, 0x70, 0xEE, 0xAD, - 0x9B, 0x0E, 0x46, 0x1D, 0x60, 0x48, 0x23, 0xED, 0x1E, 0xCF, - 0x8C + 0x30, 0x82, 0x03, 0x61, 0x30, 0x82, 0x03, 0x07, 0xA0, 0x03, + 0x02, 0x01, 0x02, 0x02, 0x09, 0x00, 0xE5, 0xB6, 0x66, 0xE0, + 0x08, 0x96, 0xC5, 0x95, 0x30, 0x0A, 0x06, 0x08, 0x2A, 0x86, + 0x48, 0xCE, 0x3D, 0x04, 0x03, 0x02, 0x30, 0x81, 0xA0, 0x31, + 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, + 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, + 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, + 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, + 0x07, 0x42, 0x6F, 0x7A, 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x18, + 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x0F, 0x45, + 0x6C, 0x6C, 0x69, 0x70, 0x74, 0x69, 0x63, 0x20, 0x2D, 0x20, + 0x63, 0x6F, 0x6D, 0x70, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, + 0x55, 0x04, 0x0B, 0x0C, 0x0F, 0x53, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x20, 0x45, 0x43, 0x43, 0x2D, 0x63, 0x6F, 0x6D, 0x70, + 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0C, + 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, 0x73, + 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, 0x1D, + 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, + 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, + 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x30, + 0x1E, 0x17, 0x0D, 0x32, 0x31, 0x30, 0x32, 0x31, 0x30, 0x31, + 0x39, 0x34, 0x39, 0x35, 0x33, 0x5A, 0x17, 0x0D, 0x32, 0x33, + 0x31, 0x31, 0x30, 0x37, 0x31, 0x39, 0x34, 0x39, 0x35, 0x33, + 0x5A, 0x30, 0x81, 0xA0, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, + 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, 0x30, + 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, 0x6F, + 0x6E, 0x74, 0x61, 0x6E, 0x61, 0x31, 0x10, 0x30, 0x0E, 0x06, + 0x03, 0x55, 0x04, 0x07, 0x0C, 0x07, 0x42, 0x6F, 0x7A, 0x65, + 0x6D, 0x61, 0x6E, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, + 0x04, 0x0A, 0x0C, 0x0F, 0x45, 0x6C, 0x6C, 0x69, 0x70, 0x74, + 0x69, 0x63, 0x20, 0x2D, 0x20, 0x63, 0x6F, 0x6D, 0x70, 0x31, + 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x0F, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x20, 0x45, 0x43, 0x43, + 0x2D, 0x63, 0x6F, 0x6D, 0x70, 0x31, 0x18, 0x30, 0x16, 0x06, + 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, + 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, + 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, + 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, + 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, + 0x2E, 0x63, 0x6F, 0x6D, 0x30, 0x39, 0x30, 0x13, 0x06, 0x07, + 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x02, 0x01, 0x06, 0x08, 0x2A, + 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x01, 0x07, 0x03, 0x22, 0x00, + 0x02, 0xBB, 0x33, 0xAC, 0x4C, 0x27, 0x50, 0x4A, 0xC6, 0x4A, + 0xA5, 0x04, 0xC3, 0x3C, 0xDE, 0x9F, 0x36, 0xDB, 0x72, 0x2D, + 0xCE, 0x94, 0xEA, 0x2B, 0xFA, 0xCB, 0x20, 0x09, 0x39, 0x2C, + 0x16, 0xE8, 0x61, 0xA3, 0x82, 0x01, 0x46, 0x30, 0x82, 0x01, + 0x42, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x0E, 0x04, 0x16, + 0x04, 0x14, 0x8C, 0x38, 0x3A, 0x6B, 0xB8, 0x24, 0xB7, 0xDF, + 0x6E, 0xF4, 0x59, 0xAC, 0x56, 0x4E, 0xAA, 0xE2, 0x58, 0xA6, + 0x5A, 0x18, 0x30, 0x81, 0xD5, 0x06, 0x03, 0x55, 0x1D, 0x23, + 0x04, 0x81, 0xCD, 0x30, 0x81, 0xCA, 0x80, 0x14, 0x8C, 0x38, + 0x3A, 0x6B, 0xB8, 0x24, 0xB7, 0xDF, 0x6E, 0xF4, 0x59, 0xAC, + 0x56, 0x4E, 0xAA, 0xE2, 0x58, 0xA6, 0x5A, 0x18, 0xA1, 0x81, + 0xA6, 0xA4, 0x81, 0xA3, 0x30, 0x81, 0xA0, 0x31, 0x0B, 0x30, + 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, + 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, + 0x07, 0x4D, 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, 0x31, 0x10, + 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, 0x07, 0x42, + 0x6F, 0x7A, 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x18, 0x30, 0x16, + 0x06, 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x0F, 0x45, 0x6C, 0x6C, + 0x69, 0x70, 0x74, 0x69, 0x63, 0x20, 0x2D, 0x20, 0x63, 0x6F, + 0x6D, 0x70, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, + 0x0B, 0x0C, 0x0F, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x20, + 0x45, 0x43, 0x43, 0x2D, 0x63, 0x6F, 0x6D, 0x70, 0x31, 0x18, + 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, + 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, + 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, + 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, + 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, + 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x09, 0x00, + 0xE5, 0xB6, 0x66, 0xE0, 0x08, 0x96, 0xC5, 0x95, 0x30, 0x0C, + 0x06, 0x03, 0x55, 0x1D, 0x13, 0x04, 0x05, 0x30, 0x03, 0x01, + 0x01, 0xFF, 0x30, 0x1C, 0x06, 0x03, 0x55, 0x1D, 0x11, 0x04, + 0x15, 0x30, 0x13, 0x82, 0x0B, 0x65, 0x78, 0x61, 0x6D, 0x70, + 0x6C, 0x65, 0x2E, 0x63, 0x6F, 0x6D, 0x87, 0x04, 0x7F, 0x00, + 0x00, 0x01, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x25, 0x04, + 0x16, 0x30, 0x14, 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, 0x05, + 0x07, 0x03, 0x01, 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, 0x05, + 0x07, 0x03, 0x02, 0x30, 0x0A, 0x06, 0x08, 0x2A, 0x86, 0x48, + 0xCE, 0x3D, 0x04, 0x03, 0x02, 0x03, 0x48, 0x00, 0x30, 0x45, + 0x02, 0x21, 0x00, 0xAE, 0x80, 0xD7, 0xF5, 0x4D, 0x76, 0x79, + 0x5C, 0x01, 0x14, 0x8B, 0xFD, 0x80, 0x79, 0xFB, 0x9B, 0xFE, + 0x8F, 0x0D, 0x9C, 0xC3, 0x7C, 0xE6, 0x80, 0x4C, 0xA6, 0x54, + 0x16, 0x3F, 0xED, 0x1D, 0x5E, 0x02, 0x20, 0x09, 0x61, 0x2D, + 0x84, 0xE9, 0x04, 0x4F, 0x79, 0x0E, 0xE7, 0xF0, 0xCC, 0x52, + 0xD3, 0x2F, 0xE0, 0x89, 0xCF, 0xBE, 0x9B, 0x9F, 0x86, 0x23, + 0x2F, 0xE4, 0xCB, 0x43, 0x16, 0xBB, 0x09, 0x8D, 0x87 }; static const int sizeof_serv_ecc_comp_der_256 = sizeof(serv_ecc_comp_der_256); /* ./certs/server-ecc-rsa.der, ECC */ static const unsigned char serv_ecc_rsa_der_256[] = { - 0x30, 0x82, 0x04, 0x2A, 0x30, 0x82, 0x03, 0x12, 0xA0, 0x03, + 0x30, 0x82, 0x04, 0x1F, 0x30, 0x82, 0x03, 0x07, 0xA0, 0x03, 0x02, 0x01, 0x02, 0x02, 0x01, 0x01, 0x30, 0x0D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, 0x00, 0x30, 0x81, 0x94, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, @@ -3591,10 +3609,10 @@ static const unsigned char serv_ecc_rsa_der_256[] = 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, - 0x6F, 0x6D, 0x30, 0x1E, 0x17, 0x0D, 0x32, 0x30, 0x30, 0x36, - 0x31, 0x39, 0x31, 0x33, 0x32, 0x33, 0x34, 0x31, 0x5A, 0x17, - 0x0D, 0x32, 0x33, 0x30, 0x33, 0x31, 0x36, 0x31, 0x33, 0x32, - 0x33, 0x34, 0x31, 0x5A, 0x30, 0x81, 0x9D, 0x31, 0x0B, 0x30, + 0x6F, 0x6D, 0x30, 0x1E, 0x17, 0x0D, 0x32, 0x31, 0x30, 0x32, + 0x31, 0x30, 0x31, 0x39, 0x34, 0x39, 0x35, 0x33, 0x5A, 0x17, + 0x0D, 0x32, 0x33, 0x31, 0x31, 0x30, 0x37, 0x31, 0x39, 0x34, + 0x39, 0x35, 0x33, 0x5A, 0x30, 0x81, 0x9D, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, 0x31, 0x10, @@ -3619,12 +3637,12 @@ static const unsigned char serv_ecc_rsa_der_256[] = 0x16, 0xE8, 0x61, 0x02, 0xE9, 0xAF, 0x4D, 0xD3, 0x02, 0x93, 0x9A, 0x31, 0x5B, 0x97, 0x92, 0x21, 0x7F, 0xF0, 0xCF, 0x18, 0xDA, 0x91, 0x11, 0x02, 0x34, 0x86, 0xE8, 0x20, 0x58, 0x33, - 0x0B, 0x80, 0x34, 0x89, 0xD8, 0xA3, 0x82, 0x01, 0x45, 0x30, - 0x82, 0x01, 0x41, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x0E, + 0x0B, 0x80, 0x34, 0x89, 0xD8, 0xA3, 0x82, 0x01, 0x3A, 0x30, + 0x82, 0x01, 0x36, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x0E, 0x04, 0x16, 0x04, 0x14, 0x5D, 0x5D, 0x26, 0xEF, 0xAC, 0x7E, 0x36, 0xF9, 0x9B, 0x76, 0x15, 0x2B, 0x4A, 0x25, 0x02, 0x23, - 0xEF, 0xB2, 0x89, 0x30, 0x30, 0x81, 0xD4, 0x06, 0x03, 0x55, - 0x1D, 0x23, 0x04, 0x81, 0xCC, 0x30, 0x81, 0xC9, 0x80, 0x14, + 0xEF, 0xB2, 0x89, 0x30, 0x30, 0x81, 0xC9, 0x06, 0x03, 0x55, + 0x1D, 0x23, 0x04, 0x81, 0xC1, 0x30, 0x81, 0xBE, 0x80, 0x14, 0x27, 0x8E, 0x67, 0x11, 0x74, 0xC3, 0x26, 0x1D, 0x3F, 0xED, 0x33, 0x63, 0xB3, 0xA4, 0xD8, 0x1D, 0x30, 0xE5, 0xE8, 0xD5, 0xA1, 0x81, 0x9A, 0xA4, 0x81, 0x97, 0x30, 0x81, 0x94, 0x31, @@ -3642,52 +3660,50 @@ static const unsigned char serv_ecc_rsa_der_256[] = 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, - 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x14, 0x5E, - 0xBA, 0xA4, 0xF4, 0xB1, 0xF7, 0x48, 0x25, 0xE3, 0x5F, 0x9B, - 0xDA, 0xA1, 0x13, 0xED, 0xD5, 0x2B, 0x03, 0x67, 0x15, 0x30, - 0x0C, 0x06, 0x03, 0x55, 0x1D, 0x13, 0x04, 0x05, 0x30, 0x03, - 0x01, 0x01, 0xFF, 0x30, 0x1C, 0x06, 0x03, 0x55, 0x1D, 0x11, - 0x04, 0x15, 0x30, 0x13, 0x82, 0x0B, 0x65, 0x78, 0x61, 0x6D, - 0x70, 0x6C, 0x65, 0x2E, 0x63, 0x6F, 0x6D, 0x87, 0x04, 0x7F, - 0x00, 0x00, 0x01, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x25, - 0x04, 0x16, 0x30, 0x14, 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, - 0x05, 0x07, 0x03, 0x01, 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, - 0x05, 0x07, 0x03, 0x02, 0x30, 0x0D, 0x06, 0x09, 0x2A, 0x86, - 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, 0x00, 0x03, - 0x82, 0x01, 0x01, 0x00, 0x69, 0x31, 0x1F, 0x55, 0xAB, 0xA3, - 0x11, 0x91, 0x89, 0xF5, 0xEE, 0x88, 0x8F, 0xC1, 0x53, 0x8B, - 0xF6, 0xEB, 0xFF, 0x14, 0x3B, 0x7A, 0x25, 0x37, 0xF0, 0x19, - 0x20, 0x35, 0x37, 0xF5, 0x27, 0x1E, 0xE9, 0xC1, 0xDB, 0x34, - 0xAC, 0x27, 0x0B, 0xEE, 0x29, 0x9F, 0x7E, 0x8B, 0x89, 0x7D, - 0xC8, 0x1F, 0xB4, 0xEC, 0x75, 0x92, 0xF1, 0x82, 0x4E, 0x22, - 0x02, 0x14, 0x7C, 0x7E, 0xE4, 0x65, 0x09, 0x34, 0x23, 0x0D, - 0x9A, 0x73, 0xBF, 0x86, 0x98, 0x0F, 0xEE, 0x16, 0x57, 0x21, - 0x65, 0x7E, 0x94, 0x96, 0x40, 0x85, 0xBF, 0x3F, 0x9E, 0x11, - 0xA8, 0x8F, 0x7E, 0x9B, 0x4B, 0x82, 0x29, 0xFE, 0xBB, 0x47, - 0xA8, 0x43, 0x9E, 0xDA, 0xFA, 0x4C, 0x40, 0xCF, 0xCA, 0xA6, - 0x98, 0x00, 0x07, 0xBB, 0xC3, 0x86, 0xA8, 0x3F, 0x15, 0xAE, - 0xF5, 0xF9, 0x69, 0x7E, 0x9E, 0x44, 0x2F, 0xC5, 0xA3, 0x33, - 0x1D, 0xDC, 0x04, 0x04, 0xDC, 0x6E, 0x25, 0xC6, 0x7F, 0x15, - 0x7A, 0xF0, 0x99, 0x93, 0x47, 0xF6, 0x8F, 0x41, 0x95, 0xC7, - 0x16, 0x78, 0xF4, 0x5E, 0x48, 0xA3, 0xFE, 0x38, 0x7A, 0x43, - 0xE1, 0x19, 0x40, 0x7E, 0x25, 0x09, 0x23, 0x67, 0xFE, 0x51, - 0x9C, 0xD5, 0xDE, 0xEF, 0xC3, 0x02, 0x23, 0x4F, 0x63, 0xBA, - 0xEC, 0xB8, 0x56, 0x17, 0x04, 0x07, 0x29, 0x09, 0x3E, 0xA8, - 0xF8, 0xD6, 0x76, 0x2B, 0xF7, 0x79, 0x56, 0x3D, 0x39, 0x0A, - 0xDF, 0x6F, 0xC5, 0x5A, 0x2F, 0x81, 0x1F, 0x63, 0x15, 0x36, - 0x51, 0x07, 0xE2, 0x8B, 0xCB, 0x6C, 0xCF, 0x6E, 0x92, 0xA7, - 0xCA, 0x3B, 0xF6, 0xC5, 0x66, 0x34, 0x84, 0x5A, 0x47, 0x20, - 0xE3, 0x63, 0x04, 0x5F, 0x38, 0x35, 0xA4, 0xD3, 0x3D, 0x3A, - 0xE1, 0x85, 0x85, 0x62, 0x85, 0x5B, 0x69, 0xAD, 0xAA, 0xE9, - 0x40, 0x28, 0xD7, 0xF9, 0x7C, 0x53, 0x48, 0xC0, 0x1B, 0xCC - + 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x09, 0x00, + 0xAA, 0xD3, 0x3F, 0xAC, 0x18, 0x0A, 0x37, 0x4D, 0x30, 0x0C, + 0x06, 0x03, 0x55, 0x1D, 0x13, 0x04, 0x05, 0x30, 0x03, 0x01, + 0x01, 0xFF, 0x30, 0x1C, 0x06, 0x03, 0x55, 0x1D, 0x11, 0x04, + 0x15, 0x30, 0x13, 0x82, 0x0B, 0x65, 0x78, 0x61, 0x6D, 0x70, + 0x6C, 0x65, 0x2E, 0x63, 0x6F, 0x6D, 0x87, 0x04, 0x7F, 0x00, + 0x00, 0x01, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x25, 0x04, + 0x16, 0x30, 0x14, 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, 0x05, + 0x07, 0x03, 0x01, 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, 0x05, + 0x07, 0x03, 0x02, 0x30, 0x0D, 0x06, 0x09, 0x2A, 0x86, 0x48, + 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x0B, 0x05, 0x00, 0x03, 0x82, + 0x01, 0x01, 0x00, 0x4B, 0xCD, 0xC5, 0x8F, 0xFC, 0xBB, 0xC3, + 0x36, 0xC5, 0xD4, 0x4D, 0x71, 0x04, 0x13, 0x53, 0xA0, 0x3C, + 0xA3, 0x4E, 0x2A, 0xDD, 0x0D, 0xD3, 0xA7, 0x62, 0x31, 0x0D, + 0xC6, 0x32, 0x07, 0x31, 0xD4, 0x6B, 0x0F, 0x8B, 0x55, 0xA2, + 0x2F, 0x2C, 0xB3, 0xAE, 0x46, 0x91, 0x8A, 0x09, 0xBE, 0x7E, + 0xFF, 0xE2, 0x67, 0x46, 0xF2, 0x7E, 0xD4, 0x6F, 0xBE, 0x5D, + 0x57, 0x42, 0xFD, 0x3A, 0x56, 0xB0, 0xE8, 0x0E, 0x4D, 0x12, + 0xFD, 0xF5, 0x00, 0xCA, 0x6F, 0xBD, 0x88, 0x0C, 0x04, 0x47, + 0x1A, 0xEC, 0x5D, 0x96, 0x3F, 0xB6, 0xA5, 0x8B, 0x9D, 0x47, + 0xA6, 0x4F, 0x82, 0x07, 0x33, 0x9D, 0x11, 0x0A, 0x3D, 0x38, + 0x1D, 0x21, 0x4F, 0xD4, 0x1E, 0x1D, 0xA6, 0xD7, 0x6B, 0x72, + 0x1C, 0x51, 0xE1, 0x7A, 0x7A, 0x6C, 0x76, 0x2C, 0x98, 0x14, + 0x48, 0xFD, 0xF1, 0xD1, 0x7C, 0x53, 0x86, 0xED, 0x8C, 0x5F, + 0x4F, 0x0F, 0x27, 0x5D, 0x45, 0xBE, 0xED, 0x26, 0x90, 0xD2, + 0x51, 0x04, 0x4D, 0x06, 0x5B, 0x64, 0x1C, 0x5E, 0x31, 0x63, + 0xCC, 0xD4, 0xD5, 0x0B, 0x28, 0xCC, 0xE2, 0x29, 0x40, 0x75, + 0x87, 0x21, 0x64, 0x8E, 0x8B, 0x87, 0xEF, 0x90, 0xBB, 0x46, + 0x91, 0x91, 0xF9, 0x63, 0xF8, 0xB0, 0xA7, 0x5E, 0x8D, 0xE8, + 0x20, 0xC6, 0xB7, 0x5A, 0xD9, 0x0E, 0x35, 0xFB, 0xBA, 0xD1, + 0x09, 0xD1, 0x98, 0xA6, 0x61, 0x25, 0xE2, 0x0D, 0x97, 0xC4, + 0x1B, 0x0F, 0xBC, 0xB6, 0xEC, 0xE7, 0x96, 0x80, 0xB8, 0xE5, + 0x55, 0x03, 0x1E, 0x7F, 0xB5, 0xFD, 0x40, 0x06, 0xCC, 0xAA, + 0x7B, 0xF0, 0xB3, 0x81, 0x2E, 0xE1, 0x4E, 0x3A, 0x52, 0xE3, + 0xF3, 0xC4, 0xD3, 0x8C, 0x78, 0x49, 0x00, 0x3A, 0x57, 0xDF, + 0x0E, 0xAA, 0x2F, 0x14, 0x52, 0x3F, 0xC8, 0xFA, 0x82, 0xB9, + 0xBF, 0x27, 0xF8, 0x9C, 0x42, 0xB7, 0x44, 0x36, 0x68 }; static const int sizeof_serv_ecc_rsa_der_256 = sizeof(serv_ecc_rsa_der_256); /* ./certs/server-ecc.der, ECC */ static const unsigned char serv_ecc_der_256[] = { - 0x30, 0x82, 0x02, 0xA0, 0x30, 0x82, 0x02, 0x47, 0xA0, 0x03, + 0x30, 0x82, 0x02, 0xA1, 0x30, 0x82, 0x02, 0x47, 0xA0, 0x03, 0x02, 0x01, 0x02, 0x02, 0x01, 0x03, 0x30, 0x0A, 0x06, 0x08, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x04, 0x03, 0x02, 0x30, 0x81, 0x97, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, @@ -3705,10 +3721,10 @@ static const unsigned char serv_ecc_der_256[] = 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, - 0x6F, 0x6D, 0x30, 0x1E, 0x17, 0x0D, 0x32, 0x30, 0x30, 0x36, - 0x31, 0x39, 0x31, 0x33, 0x32, 0x33, 0x34, 0x31, 0x5A, 0x17, - 0x0D, 0x32, 0x33, 0x30, 0x33, 0x31, 0x36, 0x31, 0x33, 0x32, - 0x33, 0x34, 0x31, 0x5A, 0x30, 0x81, 0x8F, 0x31, 0x0B, 0x30, + 0x6F, 0x6D, 0x30, 0x1E, 0x17, 0x0D, 0x32, 0x31, 0x30, 0x32, + 0x31, 0x30, 0x31, 0x39, 0x34, 0x39, 0x35, 0x33, 0x5A, 0x17, + 0x0D, 0x32, 0x33, 0x31, 0x31, 0x30, 0x37, 0x31, 0x39, 0x34, + 0x39, 0x35, 0x33, 0x5A, 0x30, 0x81, 0x8F, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x0A, 0x57, 0x61, 0x73, 0x68, 0x69, 0x6E, 0x67, 0x74, 0x6F, @@ -3747,14 +3763,14 @@ static const unsigned char serv_ecc_der_256[] = 0x03, 0x01, 0x30, 0x11, 0x06, 0x09, 0x60, 0x86, 0x48, 0x01, 0x86, 0xF8, 0x42, 0x01, 0x01, 0x04, 0x04, 0x03, 0x02, 0x06, 0x40, 0x30, 0x0A, 0x06, 0x08, 0x2A, 0x86, 0x48, 0xCE, 0x3D, - 0x04, 0x03, 0x02, 0x03, 0x47, 0x00, 0x30, 0x44, 0x02, 0x20, - 0x7C, 0xFB, 0xBB, 0x4B, 0xC0, 0xF6, 0x21, 0x84, 0x04, 0x87, - 0xF8, 0x90, 0x4D, 0xC1, 0xF6, 0xC2, 0x67, 0x95, 0xC4, 0xF3, - 0xE8, 0x8E, 0x5E, 0x43, 0xDF, 0xC2, 0x74, 0xDC, 0xFD, 0x86, - 0x6F, 0x7D, 0x02, 0x20, 0x1B, 0x4C, 0x97, 0xF0, 0x93, 0x4C, - 0x61, 0x26, 0xEA, 0xA7, 0xD9, 0x93, 0x22, 0x4E, 0x21, 0x46, - 0x14, 0x9E, 0x24, 0xBF, 0xF5, 0xD5, 0xAB, 0x3B, 0xAE, 0x69, - 0x40, 0xCF, 0x6F, 0xE0, 0xD3, 0x82 + 0x04, 0x03, 0x02, 0x03, 0x48, 0x00, 0x30, 0x45, 0x02, 0x20, + 0x61, 0x6F, 0xE8, 0xB9, 0xAD, 0xCC, 0xC9, 0x1A, 0x81, 0x17, + 0x02, 0x64, 0x07, 0xC3, 0x18, 0x44, 0x01, 0x81, 0x76, 0x18, + 0x9D, 0x6D, 0x3D, 0x7D, 0xCB, 0xC1, 0x5A, 0x76, 0x4A, 0xAD, + 0x71, 0x55, 0x02, 0x21, 0x00, 0xCD, 0x22, 0x35, 0x04, 0x19, + 0xC2, 0x23, 0x21, 0x02, 0x88, 0x4B, 0x51, 0xDA, 0xDB, 0x51, + 0xAB, 0x54, 0x8C, 0xCB, 0x38, 0xAC, 0x8E, 0xBB, 0xEE, 0x18, + 0x07, 0xBF, 0x88, 0x36, 0x88, 0xFF, 0xD5 }; static const int sizeof_serv_ecc_der_256 = sizeof(serv_ecc_der_256); @@ -3780,73 +3796,72 @@ static const int sizeof_ca_ecc_key_der_256 = sizeof(ca_ecc_key_der_256); /* ./certs/ca-ecc-cert.der, ECC */ static const unsigned char ca_ecc_cert_der_256[] = { - 0x30, 0x82, 0x02, 0x94, 0x30, 0x82, 0x02, 0x3B, 0xA0, 0x03, - 0x02, 0x01, 0x02, 0x02, 0x14, 0x7E, 0xBD, 0xD9, 0xC1, 0xA5, - 0xB2, 0x60, 0xA4, 0xBA, 0xF4, 0x86, 0xCF, 0x13, 0xAC, 0x77, - 0x84, 0xBE, 0xAC, 0x07, 0xE7, 0x30, 0x0A, 0x06, 0x08, 0x2A, - 0x86, 0x48, 0xCE, 0x3D, 0x04, 0x03, 0x02, 0x30, 0x81, 0x97, - 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, - 0x02, 0x55, 0x53, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55, - 0x04, 0x08, 0x0C, 0x0A, 0x57, 0x61, 0x73, 0x68, 0x69, 0x6E, - 0x67, 0x74, 0x6F, 0x6E, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, - 0x55, 0x04, 0x07, 0x0C, 0x07, 0x53, 0x65, 0x61, 0x74, 0x74, - 0x6C, 0x65, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, - 0x0A, 0x0C, 0x07, 0x77, 0x6F, 0x6C, 0x66, 0x53, 0x53, 0x4C, - 0x31, 0x14, 0x30, 0x12, 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, - 0x0B, 0x44, 0x65, 0x76, 0x65, 0x6C, 0x6F, 0x70, 0x6D, 0x65, - 0x6E, 0x74, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, - 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, - 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, - 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, - 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, - 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, - 0x6D, 0x30, 0x1E, 0x17, 0x0D, 0x32, 0x30, 0x30, 0x36, 0x31, - 0x39, 0x31, 0x33, 0x32, 0x33, 0x34, 0x31, 0x5A, 0x17, 0x0D, - 0x32, 0x33, 0x30, 0x33, 0x31, 0x36, 0x31, 0x33, 0x32, 0x33, - 0x34, 0x31, 0x5A, 0x30, 0x81, 0x97, 0x31, 0x0B, 0x30, 0x09, - 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, - 0x13, 0x30, 0x11, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x0A, - 0x57, 0x61, 0x73, 0x68, 0x69, 0x6E, 0x67, 0x74, 0x6F, 0x6E, - 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, - 0x07, 0x53, 0x65, 0x61, 0x74, 0x74, 0x6C, 0x65, 0x31, 0x10, - 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x07, 0x77, - 0x6F, 0x6C, 0x66, 0x53, 0x53, 0x4C, 0x31, 0x14, 0x30, 0x12, - 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x0B, 0x44, 0x65, 0x76, - 0x65, 0x6C, 0x6F, 0x70, 0x6D, 0x65, 0x6E, 0x74, 0x31, 0x18, - 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, - 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, - 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, - 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, - 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, - 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x30, 0x59, 0x30, - 0x13, 0x06, 0x07, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x02, 0x01, - 0x06, 0x08, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x01, 0x07, - 0x03, 0x42, 0x00, 0x04, 0x02, 0xD3, 0xD9, 0x6E, 0xD6, 0x01, - 0x8E, 0x45, 0xC8, 0xB9, 0x90, 0x31, 0xE5, 0xC0, 0x4C, 0xE3, - 0x9E, 0xAD, 0x29, 0x38, 0x98, 0xBA, 0x10, 0xD6, 0xE9, 0x09, - 0x2A, 0x80, 0xA9, 0x2E, 0x17, 0x2A, 0xB9, 0x8A, 0xBF, 0x33, - 0x83, 0x46, 0xE3, 0x95, 0x0B, 0xE4, 0x77, 0x40, 0xB5, 0x3B, - 0x43, 0x45, 0x33, 0x0F, 0x61, 0x53, 0x7C, 0x37, 0x44, 0xC1, - 0xCB, 0xFC, 0x80, 0xCA, 0xE8, 0x43, 0xEA, 0xA7, 0xA3, 0x63, - 0x30, 0x61, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x0E, 0x04, - 0x16, 0x04, 0x14, 0x56, 0x8E, 0x9A, 0xC3, 0xF0, 0x42, 0xDE, - 0x18, 0xB9, 0x45, 0x55, 0x6E, 0xF9, 0x93, 0xCF, 0xEA, 0xC3, - 0xF3, 0xA5, 0x21, 0x30, 0x1F, 0x06, 0x03, 0x55, 0x1D, 0x23, - 0x04, 0x18, 0x30, 0x16, 0x80, 0x14, 0x56, 0x8E, 0x9A, 0xC3, - 0xF0, 0x42, 0xDE, 0x18, 0xB9, 0x45, 0x55, 0x6E, 0xF9, 0x93, - 0xCF, 0xEA, 0xC3, 0xF3, 0xA5, 0x21, 0x30, 0x0F, 0x06, 0x03, - 0x55, 0x1D, 0x13, 0x01, 0x01, 0xFF, 0x04, 0x05, 0x30, 0x03, - 0x01, 0x01, 0xFF, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x1D, 0x0F, - 0x01, 0x01, 0xFF, 0x04, 0x04, 0x03, 0x02, 0x01, 0x86, 0x30, - 0x0A, 0x06, 0x08, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x04, 0x03, - 0x02, 0x03, 0x47, 0x00, 0x30, 0x44, 0x02, 0x20, 0x06, 0xC3, - 0x0A, 0x69, 0x01, 0x57, 0x31, 0x17, 0x09, 0x3F, 0x21, 0x95, - 0x4F, 0x3F, 0xC5, 0x20, 0xE3, 0x21, 0x86, 0x75, 0x47, 0x5E, - 0x87, 0xF7, 0x48, 0x8A, 0x1E, 0x01, 0xFA, 0xD2, 0x67, 0xC8, - 0x02, 0x20, 0x7D, 0xC8, 0xE9, 0x2D, 0x5B, 0x74, 0x28, 0x87, - 0x71, 0xDB, 0xA3, 0x0E, 0x19, 0x84, 0xCC, 0xB3, 0xA6, 0x83, - 0x35, 0x75, 0xF8, 0x05, 0xDD, 0xFC, 0x5E, 0x51, 0x2B, 0x18, - 0x98, 0xC4, 0xAC, 0x95 + 0x30, 0x82, 0x02, 0x8A, 0x30, 0x82, 0x02, 0x30, 0xA0, 0x03, + 0x02, 0x01, 0x02, 0x02, 0x09, 0x00, 0x83, 0x47, 0x7C, 0x81, + 0xD6, 0x0D, 0x1C, 0x4E, 0x30, 0x0A, 0x06, 0x08, 0x2A, 0x86, + 0x48, 0xCE, 0x3D, 0x04, 0x03, 0x02, 0x30, 0x81, 0x97, 0x31, + 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, + 0x55, 0x53, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55, 0x04, + 0x08, 0x0C, 0x0A, 0x57, 0x61, 0x73, 0x68, 0x69, 0x6E, 0x67, + 0x74, 0x6F, 0x6E, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, + 0x04, 0x07, 0x0C, 0x07, 0x53, 0x65, 0x61, 0x74, 0x74, 0x6C, + 0x65, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x0A, + 0x0C, 0x07, 0x77, 0x6F, 0x6C, 0x66, 0x53, 0x53, 0x4C, 0x31, + 0x14, 0x30, 0x12, 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x0B, + 0x44, 0x65, 0x76, 0x65, 0x6C, 0x6F, 0x70, 0x6D, 0x65, 0x6E, + 0x74, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, + 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, + 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, + 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, + 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, + 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, + 0x30, 0x1E, 0x17, 0x0D, 0x32, 0x31, 0x30, 0x32, 0x31, 0x30, + 0x31, 0x39, 0x34, 0x39, 0x35, 0x33, 0x5A, 0x17, 0x0D, 0x32, + 0x33, 0x31, 0x31, 0x30, 0x37, 0x31, 0x39, 0x34, 0x39, 0x35, + 0x33, 0x5A, 0x30, 0x81, 0x97, 0x31, 0x0B, 0x30, 0x09, 0x06, + 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x13, + 0x30, 0x11, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x0A, 0x57, + 0x61, 0x73, 0x68, 0x69, 0x6E, 0x67, 0x74, 0x6F, 0x6E, 0x31, + 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, 0x07, + 0x53, 0x65, 0x61, 0x74, 0x74, 0x6C, 0x65, 0x31, 0x10, 0x30, + 0x0E, 0x06, 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x07, 0x77, 0x6F, + 0x6C, 0x66, 0x53, 0x53, 0x4C, 0x31, 0x14, 0x30, 0x12, 0x06, + 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x0B, 0x44, 0x65, 0x76, 0x65, + 0x6C, 0x6F, 0x70, 0x6D, 0x65, 0x6E, 0x74, 0x31, 0x18, 0x30, + 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, + 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, + 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, + 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, + 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, + 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x30, 0x59, 0x30, 0x13, + 0x06, 0x07, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x02, 0x01, 0x06, + 0x08, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x01, 0x07, 0x03, + 0x42, 0x00, 0x04, 0x02, 0xD3, 0xD9, 0x6E, 0xD6, 0x01, 0x8E, + 0x45, 0xC8, 0xB9, 0x90, 0x31, 0xE5, 0xC0, 0x4C, 0xE3, 0x9E, + 0xAD, 0x29, 0x38, 0x98, 0xBA, 0x10, 0xD6, 0xE9, 0x09, 0x2A, + 0x80, 0xA9, 0x2E, 0x17, 0x2A, 0xB9, 0x8A, 0xBF, 0x33, 0x83, + 0x46, 0xE3, 0x95, 0x0B, 0xE4, 0x77, 0x40, 0xB5, 0x3B, 0x43, + 0x45, 0x33, 0x0F, 0x61, 0x53, 0x7C, 0x37, 0x44, 0xC1, 0xCB, + 0xFC, 0x80, 0xCA, 0xE8, 0x43, 0xEA, 0xA7, 0xA3, 0x63, 0x30, + 0x61, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x0E, 0x04, 0x16, + 0x04, 0x14, 0x56, 0x8E, 0x9A, 0xC3, 0xF0, 0x42, 0xDE, 0x18, + 0xB9, 0x45, 0x55, 0x6E, 0xF9, 0x93, 0xCF, 0xEA, 0xC3, 0xF3, + 0xA5, 0x21, 0x30, 0x1F, 0x06, 0x03, 0x55, 0x1D, 0x23, 0x04, + 0x18, 0x30, 0x16, 0x80, 0x14, 0x56, 0x8E, 0x9A, 0xC3, 0xF0, + 0x42, 0xDE, 0x18, 0xB9, 0x45, 0x55, 0x6E, 0xF9, 0x93, 0xCF, + 0xEA, 0xC3, 0xF3, 0xA5, 0x21, 0x30, 0x0F, 0x06, 0x03, 0x55, + 0x1D, 0x13, 0x01, 0x01, 0xFF, 0x04, 0x05, 0x30, 0x03, 0x01, + 0x01, 0xFF, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x1D, 0x0F, 0x01, + 0x01, 0xFF, 0x04, 0x04, 0x03, 0x02, 0x01, 0x86, 0x30, 0x0A, + 0x06, 0x08, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x04, 0x03, 0x02, + 0x03, 0x48, 0x00, 0x30, 0x45, 0x02, 0x21, 0x00, 0xC5, 0x83, + 0xFF, 0x1E, 0x51, 0xF7, 0xA1, 0xE9, 0xF1, 0x42, 0xC4, 0xBE, + 0xED, 0x38, 0xBD, 0x38, 0x32, 0x8F, 0xAE, 0x3F, 0xC7, 0x6D, + 0x11, 0x90, 0xE9, 0x99, 0xAB, 0x61, 0xA2, 0xDB, 0xA7, 0x4B, + 0x02, 0x20, 0x28, 0x40, 0xD9, 0xBA, 0x45, 0xCC, 0xA6, 0xEA, + 0xFA, 0x3F, 0x3E, 0x71, 0x44, 0x8E, 0x02, 0x03, 0x2F, 0x41, + 0x0B, 0x56, 0x78, 0x2D, 0xA6, 0xE8, 0x5E, 0xF6, 0xFF, 0xDA, + 0x62, 0x8C, 0xF9, 0xDF }; static const int sizeof_ca_ecc_cert_der_256 = sizeof(ca_ecc_cert_der_256); @@ -3876,79 +3891,78 @@ static const int sizeof_ca_ecc_key_der_384 = sizeof(ca_ecc_key_der_384); /* ./certs/ca-ecc384-cert.der, ECC */ static const unsigned char ca_ecc_cert_der_384[] = { - 0x30, 0x82, 0x02, 0xD3, 0x30, 0x82, 0x02, 0x58, 0xA0, 0x03, - 0x02, 0x01, 0x02, 0x02, 0x14, 0x20, 0xDA, 0x85, 0x3F, 0x78, - 0xC9, 0x83, 0x3B, 0xAE, 0xAA, 0x5A, 0x67, 0x49, 0x27, 0x78, - 0xBA, 0x90, 0xDE, 0x66, 0x6E, 0x30, 0x0A, 0x06, 0x08, 0x2A, - 0x86, 0x48, 0xCE, 0x3D, 0x04, 0x03, 0x03, 0x30, 0x81, 0x97, - 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, - 0x02, 0x55, 0x53, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55, - 0x04, 0x08, 0x0C, 0x0A, 0x57, 0x61, 0x73, 0x68, 0x69, 0x6E, - 0x67, 0x74, 0x6F, 0x6E, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, - 0x55, 0x04, 0x07, 0x0C, 0x07, 0x53, 0x65, 0x61, 0x74, 0x74, - 0x6C, 0x65, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, - 0x0A, 0x0C, 0x07, 0x77, 0x6F, 0x6C, 0x66, 0x53, 0x53, 0x4C, - 0x31, 0x14, 0x30, 0x12, 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, - 0x0B, 0x44, 0x65, 0x76, 0x65, 0x6C, 0x6F, 0x70, 0x6D, 0x65, - 0x6E, 0x74, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, - 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, - 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, - 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, - 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, - 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, - 0x6D, 0x30, 0x1E, 0x17, 0x0D, 0x32, 0x30, 0x30, 0x36, 0x31, - 0x39, 0x31, 0x33, 0x32, 0x33, 0x34, 0x31, 0x5A, 0x17, 0x0D, - 0x32, 0x33, 0x30, 0x33, 0x31, 0x36, 0x31, 0x33, 0x32, 0x33, - 0x34, 0x31, 0x5A, 0x30, 0x81, 0x97, 0x31, 0x0B, 0x30, 0x09, - 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, - 0x13, 0x30, 0x11, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x0A, - 0x57, 0x61, 0x73, 0x68, 0x69, 0x6E, 0x67, 0x74, 0x6F, 0x6E, - 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, - 0x07, 0x53, 0x65, 0x61, 0x74, 0x74, 0x6C, 0x65, 0x31, 0x10, - 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x07, 0x77, - 0x6F, 0x6C, 0x66, 0x53, 0x53, 0x4C, 0x31, 0x14, 0x30, 0x12, - 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x0B, 0x44, 0x65, 0x76, - 0x65, 0x6C, 0x6F, 0x70, 0x6D, 0x65, 0x6E, 0x74, 0x31, 0x18, - 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, - 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, - 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, - 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, - 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, - 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x30, 0x76, 0x30, - 0x10, 0x06, 0x07, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x02, 0x01, - 0x06, 0x05, 0x2B, 0x81, 0x04, 0x00, 0x22, 0x03, 0x62, 0x00, - 0x04, 0xEE, 0x82, 0xD4, 0x39, 0x9A, 0xB1, 0x27, 0x82, 0xF4, - 0xD7, 0xEA, 0xC6, 0xBC, 0x03, 0x1D, 0x4D, 0x83, 0x61, 0xF4, - 0x03, 0xAE, 0x7E, 0xBD, 0xD8, 0x5A, 0xA5, 0xB9, 0xF0, 0x8E, - 0xA2, 0xA5, 0xDA, 0xCE, 0x87, 0x3B, 0x5A, 0xAB, 0x44, 0x16, - 0x9C, 0xF5, 0x9F, 0x62, 0xDD, 0xF6, 0x20, 0xCD, 0x9C, 0x76, - 0x3C, 0x40, 0xB1, 0x3F, 0x97, 0x17, 0xDF, 0x59, 0xF6, 0xCD, - 0xDE, 0xCD, 0x46, 0x35, 0xC0, 0xED, 0x5E, 0x2E, 0x48, 0xB6, - 0x66, 0x91, 0x71, 0x74, 0xB7, 0x0C, 0x3F, 0xB9, 0x9A, 0xB7, - 0x83, 0xBD, 0x93, 0x3F, 0x5F, 0x50, 0x2D, 0x70, 0x3F, 0xDE, - 0x35, 0x25, 0xE1, 0x90, 0x3B, 0x86, 0xE0, 0xA3, 0x63, 0x30, - 0x61, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x0E, 0x04, 0x16, - 0x04, 0x14, 0xAB, 0xE0, 0xC3, 0x26, 0x4C, 0x18, 0xD4, 0x72, - 0xBB, 0xD2, 0x84, 0x8C, 0x9C, 0x0A, 0x05, 0x92, 0x80, 0x12, - 0x53, 0x52, 0x30, 0x1F, 0x06, 0x03, 0x55, 0x1D, 0x23, 0x04, - 0x18, 0x30, 0x16, 0x80, 0x14, 0xAB, 0xE0, 0xC3, 0x26, 0x4C, - 0x18, 0xD4, 0x72, 0xBB, 0xD2, 0x84, 0x8C, 0x9C, 0x0A, 0x05, - 0x92, 0x80, 0x12, 0x53, 0x52, 0x30, 0x0F, 0x06, 0x03, 0x55, - 0x1D, 0x13, 0x01, 0x01, 0xFF, 0x04, 0x05, 0x30, 0x03, 0x01, - 0x01, 0xFF, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x1D, 0x0F, 0x01, - 0x01, 0xFF, 0x04, 0x04, 0x03, 0x02, 0x01, 0x86, 0x30, 0x0A, - 0x06, 0x08, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x04, 0x03, 0x03, - 0x03, 0x69, 0x00, 0x30, 0x66, 0x02, 0x31, 0x00, 0xD2, 0x4E, - 0x24, 0xAF, 0x70, 0x3E, 0x93, 0x0B, 0x2E, 0xD5, 0x7C, 0x71, - 0xF3, 0x61, 0x3E, 0x8E, 0x71, 0x6D, 0x2E, 0x60, 0xDE, 0xFB, - 0xEF, 0x3F, 0xBE, 0x02, 0xB6, 0x14, 0x45, 0x9B, 0x0A, 0x12, - 0xAF, 0xAF, 0x41, 0xD6, 0xBB, 0x79, 0xAB, 0xD1, 0x4E, 0x8D, - 0x9D, 0xDC, 0x98, 0x25, 0x4E, 0xAA, 0x02, 0x31, 0x00, 0xCF, - 0x2F, 0xB7, 0x32, 0x70, 0xE7, 0x85, 0x69, 0x17, 0xDF, 0x53, - 0x75, 0x2B, 0x36, 0x74, 0xD6, 0x1B, 0xA2, 0x62, 0xF9, 0x80, - 0x19, 0xC1, 0x3A, 0xEA, 0x9A, 0x05, 0x80, 0xB6, 0xC5, 0xF8, - 0xA2, 0xA2, 0xFF, 0xF6, 0x3D, 0xAA, 0x34, 0xD6, 0xE1, 0x1F, - 0xE3, 0x93, 0x66, 0xE7, 0x91, 0x4D, 0xFA + 0x30, 0x82, 0x02, 0xC7, 0x30, 0x82, 0x02, 0x4D, 0xA0, 0x03, + 0x02, 0x01, 0x02, 0x02, 0x09, 0x00, 0xA8, 0x60, 0xFD, 0x75, + 0x07, 0x98, 0x55, 0x6A, 0x30, 0x0A, 0x06, 0x08, 0x2A, 0x86, + 0x48, 0xCE, 0x3D, 0x04, 0x03, 0x03, 0x30, 0x81, 0x97, 0x31, + 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, + 0x55, 0x53, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55, 0x04, + 0x08, 0x0C, 0x0A, 0x57, 0x61, 0x73, 0x68, 0x69, 0x6E, 0x67, + 0x74, 0x6F, 0x6E, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, + 0x04, 0x07, 0x0C, 0x07, 0x53, 0x65, 0x61, 0x74, 0x74, 0x6C, + 0x65, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x0A, + 0x0C, 0x07, 0x77, 0x6F, 0x6C, 0x66, 0x53, 0x53, 0x4C, 0x31, + 0x14, 0x30, 0x12, 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x0B, + 0x44, 0x65, 0x76, 0x65, 0x6C, 0x6F, 0x70, 0x6D, 0x65, 0x6E, + 0x74, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, + 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, + 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, + 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, + 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, + 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, + 0x30, 0x1E, 0x17, 0x0D, 0x32, 0x31, 0x30, 0x32, 0x31, 0x30, + 0x31, 0x39, 0x34, 0x39, 0x35, 0x33, 0x5A, 0x17, 0x0D, 0x32, + 0x33, 0x31, 0x31, 0x30, 0x37, 0x31, 0x39, 0x34, 0x39, 0x35, + 0x33, 0x5A, 0x30, 0x81, 0x97, 0x31, 0x0B, 0x30, 0x09, 0x06, + 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x13, + 0x30, 0x11, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x0A, 0x57, + 0x61, 0x73, 0x68, 0x69, 0x6E, 0x67, 0x74, 0x6F, 0x6E, 0x31, + 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, 0x07, + 0x53, 0x65, 0x61, 0x74, 0x74, 0x6C, 0x65, 0x31, 0x10, 0x30, + 0x0E, 0x06, 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x07, 0x77, 0x6F, + 0x6C, 0x66, 0x53, 0x53, 0x4C, 0x31, 0x14, 0x30, 0x12, 0x06, + 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x0B, 0x44, 0x65, 0x76, 0x65, + 0x6C, 0x6F, 0x70, 0x6D, 0x65, 0x6E, 0x74, 0x31, 0x18, 0x30, + 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, + 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, + 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, + 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, + 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, + 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x30, 0x76, 0x30, 0x10, + 0x06, 0x07, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x02, 0x01, 0x06, + 0x05, 0x2B, 0x81, 0x04, 0x00, 0x22, 0x03, 0x62, 0x00, 0x04, + 0xEE, 0x82, 0xD4, 0x39, 0x9A, 0xB1, 0x27, 0x82, 0xF4, 0xD7, + 0xEA, 0xC6, 0xBC, 0x03, 0x1D, 0x4D, 0x83, 0x61, 0xF4, 0x03, + 0xAE, 0x7E, 0xBD, 0xD8, 0x5A, 0xA5, 0xB9, 0xF0, 0x8E, 0xA2, + 0xA5, 0xDA, 0xCE, 0x87, 0x3B, 0x5A, 0xAB, 0x44, 0x16, 0x9C, + 0xF5, 0x9F, 0x62, 0xDD, 0xF6, 0x20, 0xCD, 0x9C, 0x76, 0x3C, + 0x40, 0xB1, 0x3F, 0x97, 0x17, 0xDF, 0x59, 0xF6, 0xCD, 0xDE, + 0xCD, 0x46, 0x35, 0xC0, 0xED, 0x5E, 0x2E, 0x48, 0xB6, 0x66, + 0x91, 0x71, 0x74, 0xB7, 0x0C, 0x3F, 0xB9, 0x9A, 0xB7, 0x83, + 0xBD, 0x93, 0x3F, 0x5F, 0x50, 0x2D, 0x70, 0x3F, 0xDE, 0x35, + 0x25, 0xE1, 0x90, 0x3B, 0x86, 0xE0, 0xA3, 0x63, 0x30, 0x61, + 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x0E, 0x04, 0x16, 0x04, + 0x14, 0xAB, 0xE0, 0xC3, 0x26, 0x4C, 0x18, 0xD4, 0x72, 0xBB, + 0xD2, 0x84, 0x8C, 0x9C, 0x0A, 0x05, 0x92, 0x80, 0x12, 0x53, + 0x52, 0x30, 0x1F, 0x06, 0x03, 0x55, 0x1D, 0x23, 0x04, 0x18, + 0x30, 0x16, 0x80, 0x14, 0xAB, 0xE0, 0xC3, 0x26, 0x4C, 0x18, + 0xD4, 0x72, 0xBB, 0xD2, 0x84, 0x8C, 0x9C, 0x0A, 0x05, 0x92, + 0x80, 0x12, 0x53, 0x52, 0x30, 0x0F, 0x06, 0x03, 0x55, 0x1D, + 0x13, 0x01, 0x01, 0xFF, 0x04, 0x05, 0x30, 0x03, 0x01, 0x01, + 0xFF, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x1D, 0x0F, 0x01, 0x01, + 0xFF, 0x04, 0x04, 0x03, 0x02, 0x01, 0x86, 0x30, 0x0A, 0x06, + 0x08, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x04, 0x03, 0x03, 0x03, + 0x68, 0x00, 0x30, 0x65, 0x02, 0x30, 0x47, 0xA2, 0x36, 0x33, + 0xF4, 0x27, 0xBD, 0xD0, 0x5C, 0xE6, 0x8D, 0x3E, 0x31, 0xA9, + 0x4E, 0x51, 0x57, 0xA9, 0x93, 0x28, 0x72, 0x0A, 0x72, 0xAB, + 0x6E, 0xF9, 0x56, 0xC0, 0xF5, 0x70, 0x02, 0x9F, 0x9C, 0xB2, + 0x4A, 0x9C, 0x3E, 0x9F, 0xFB, 0xC5, 0x64, 0x26, 0x7A, 0x88, + 0xDC, 0x4A, 0x2A, 0x25, 0x02, 0x31, 0x00, 0x88, 0xF8, 0xE2, + 0xD5, 0x20, 0x82, 0xF2, 0xDE, 0x7B, 0xCB, 0x13, 0xAC, 0xCD, + 0xFF, 0xE8, 0x1E, 0x4E, 0x84, 0x3D, 0x9C, 0xAF, 0x5D, 0xF9, + 0x01, 0xE7, 0x4F, 0xD4, 0x03, 0x09, 0x84, 0x3D, 0x7B, 0x2B, + 0x83, 0xE2, 0xAE, 0x08, 0x68, 0x2E, 0x5B, 0x85, 0x6F, 0x43, + 0xF5, 0x41, 0xE0, 0xC7, 0xC9 }; static const int sizeof_ca_ecc_cert_der_384 = sizeof(ca_ecc_cert_der_384); @@ -3981,231 +3995,250 @@ static const unsigned char dh_g[] = /* ./certs/ed25519/server-ed25519.der, ED25519 */ static const unsigned char server_ed25519_cert[] = { - 0x30, 0x82, 0x02, 0x52, 0x30, 0x82, 0x02, 0x04, 0xA0, 0x03, - 0x02, 0x01, 0x02, 0x02, 0x10, 0x00, 0xCD, 0xF2, 0x2F, 0xBE, - 0xDC, 0x07, 0xFA, 0xBB, 0x65, 0x03, 0xE2, 0xFF, 0xEA, 0x6A, - 0x99, 0x30, 0x05, 0x06, 0x03, 0x2B, 0x65, 0x70, 0x30, 0x81, - 0x9D, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, - 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, - 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, 0x61, - 0x6E, 0x61, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, - 0x07, 0x0C, 0x07, 0x42, 0x6F, 0x7A, 0x65, 0x6D, 0x61, 0x6E, - 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x04, 0x0C, - 0x02, 0x43, 0x41, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, - 0x04, 0x0A, 0x0C, 0x07, 0x77, 0x6F, 0x6C, 0x66, 0x53, 0x53, - 0x4C, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x0B, - 0x0C, 0x07, 0x45, 0x44, 0x32, 0x35, 0x35, 0x31, 0x39, 0x31, - 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, - 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, - 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, - 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, - 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, - 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x30, 0x22, - 0x18, 0x0F, 0x32, 0x30, 0x31, 0x38, 0x30, 0x34, 0x31, 0x32, - 0x31, 0x36, 0x32, 0x32, 0x31, 0x37, 0x5A, 0x18, 0x0F, 0x32, - 0x30, 0x32, 0x31, 0x30, 0x31, 0x30, 0x37, 0x31, 0x35, 0x32, - 0x32, 0x31, 0x37, 0x5A, 0x30, 0x81, 0x9F, 0x31, 0x0B, 0x30, - 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, - 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, - 0x07, 0x4D, 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, 0x31, 0x10, - 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, 0x07, 0x42, - 0x6F, 0x7A, 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x0D, 0x30, 0x0B, - 0x06, 0x03, 0x55, 0x04, 0x04, 0x0C, 0x04, 0x4C, 0x65, 0x61, - 0x66, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x0A, - 0x0C, 0x07, 0x77, 0x6F, 0x6C, 0x66, 0x53, 0x53, 0x4C, 0x31, - 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x07, - 0x45, 0x44, 0x32, 0x35, 0x35, 0x31, 0x39, 0x31, 0x18, 0x30, - 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, - 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, - 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, - 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, - 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, - 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x30, 0x2A, 0x30, 0x05, - 0x06, 0x03, 0x2B, 0x65, 0x70, 0x03, 0x21, 0x00, 0x61, 0x5D, - 0xEC, 0xB7, 0x45, 0x93, 0xC9, 0x84, 0x7B, 0x68, 0x21, 0x4A, - 0x4D, 0xF4, 0x04, 0x8B, 0xBD, 0xCD, 0x6C, 0x5D, 0x3D, 0xB7, - 0x62, 0x2C, 0x2D, 0x25, 0xC3, 0x22, 0x49, 0xC8, 0x86, 0xF2, - 0xA3, 0x52, 0x30, 0x50, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, - 0x0E, 0x04, 0x16, 0x04, 0x14, 0x33, 0xC8, 0x28, 0x63, 0x8C, - 0xF4, 0x57, 0xEE, 0x1E, 0xB0, 0xC7, 0x12, 0x12, 0x76, 0x8A, - 0x80, 0x30, 0x3A, 0xCB, 0x10, 0x30, 0x1F, 0x06, 0x03, 0x55, - 0x1D, 0x23, 0x04, 0x18, 0x30, 0x16, 0x80, 0x14, 0x92, 0x3F, - 0x96, 0x72, 0x02, 0xFA, 0x61, 0x1C, 0x21, 0x6D, 0x88, 0xDD, - 0xEB, 0xDD, 0x3C, 0x9B, 0x17, 0xC4, 0x9F, 0xB7, 0x30, 0x0E, - 0x06, 0x03, 0x55, 0x1D, 0x0F, 0x01, 0x01, 0xFF, 0x04, 0x04, - 0x03, 0x02, 0x06, 0xC0, 0x30, 0x05, 0x06, 0x03, 0x2B, 0x65, - 0x70, 0x03, 0x41, 0x00, 0x15, 0x88, 0x86, 0xFC, 0x66, 0xD1, - 0xE0, 0xF6, 0xCF, 0xC9, 0x09, 0x46, 0xD0, 0x50, 0xE2, 0x01, - 0x5D, 0xF7, 0xCF, 0x57, 0xB8, 0xBA, 0x90, 0x84, 0xCB, 0xF1, - 0x24, 0x4B, 0xEF, 0xA5, 0x95, 0x7D, 0x69, 0x92, 0x88, 0xA8, - 0x89, 0x63, 0xCC, 0x90, 0x40, 0xC2, 0x41, 0x3A, 0x40, 0x76, - 0xB1, 0x2D, 0xA8, 0xA8, 0x97, 0xC9, 0x73, 0xC7, 0x82, 0x30, - 0x24, 0x61, 0xB0, 0xAA, 0xCA, 0xAA, 0x68, 0x00 + 0x30, 0x82, 0x02, 0x75, 0x30, 0x82, 0x02, 0x27, 0xA0, 0x03, + 0x02, 0x01, 0x02, 0x02, 0x01, 0x01, 0x30, 0x05, 0x06, 0x03, + 0x2B, 0x65, 0x70, 0x30, 0x81, 0x9B, 0x31, 0x0B, 0x30, 0x09, + 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, + 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, + 0x4D, 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, 0x31, 0x10, 0x30, + 0x0E, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, 0x07, 0x42, 0x6F, + 0x7A, 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x18, 0x30, 0x16, 0x06, + 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x0F, 0x77, 0x6F, 0x6C, 0x66, + 0x53, 0x53, 0x4C, 0x5F, 0x65, 0x64, 0x32, 0x35, 0x35, 0x31, + 0x39, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55, 0x04, 0x0B, + 0x0C, 0x0A, 0x43, 0x41, 0x2D, 0x65, 0x64, 0x32, 0x35, 0x35, + 0x31, 0x39, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, + 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, + 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, + 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, + 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, + 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, + 0x6D, 0x30, 0x1E, 0x17, 0x0D, 0x32, 0x31, 0x30, 0x33, 0x31, + 0x30, 0x30, 0x36, 0x34, 0x39, 0x30, 0x33, 0x5A, 0x17, 0x0D, + 0x32, 0x33, 0x31, 0x32, 0x30, 0x35, 0x30, 0x36, 0x34, 0x39, + 0x30, 0x33, 0x5A, 0x30, 0x81, 0x9F, 0x31, 0x0B, 0x30, 0x09, + 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, + 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, + 0x4D, 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, 0x31, 0x10, 0x30, + 0x0E, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, 0x07, 0x42, 0x6F, + 0x7A, 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x18, 0x30, 0x16, 0x06, + 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x0F, 0x77, 0x6F, 0x6C, 0x66, + 0x53, 0x53, 0x4C, 0x5F, 0x65, 0x64, 0x32, 0x35, 0x35, 0x31, + 0x39, 0x31, 0x17, 0x30, 0x15, 0x06, 0x03, 0x55, 0x04, 0x0B, + 0x0C, 0x0E, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2D, 0x65, + 0x64, 0x32, 0x35, 0x35, 0x31, 0x39, 0x31, 0x18, 0x30, 0x16, + 0x06, 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, + 0x2E, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, + 0x6F, 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, + 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, + 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, + 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x30, 0x2A, 0x30, 0x05, 0x06, + 0x03, 0x2B, 0x65, 0x70, 0x03, 0x21, 0x00, 0x23, 0xAA, 0x4D, + 0x60, 0x50, 0xE0, 0x13, 0xD3, 0x3A, 0xED, 0xAB, 0xF6, 0xA9, + 0xCC, 0x4A, 0xFE, 0xD7, 0x4D, 0x2F, 0xD2, 0x5B, 0x1A, 0x10, + 0x05, 0xEF, 0x5A, 0x41, 0x25, 0xCE, 0x1B, 0x53, 0x78, 0xA3, + 0x81, 0x89, 0x30, 0x81, 0x86, 0x30, 0x1D, 0x06, 0x03, 0x55, + 0x1D, 0x0E, 0x04, 0x16, 0x04, 0x14, 0xA3, 0x29, 0x81, 0xE7, + 0x90, 0x6F, 0xB9, 0x60, 0xF8, 0xAF, 0xCC, 0x15, 0x7A, 0xAE, + 0xD7, 0xA1, 0xF4, 0xB4, 0x86, 0xBA, 0x30, 0x1F, 0x06, 0x03, + 0x55, 0x1D, 0x23, 0x04, 0x18, 0x30, 0x16, 0x80, 0x14, 0x74, + 0xD5, 0x38, 0x19, 0x5E, 0x83, 0xB9, 0x03, 0xF8, 0x01, 0x8A, + 0x35, 0x35, 0xBB, 0x89, 0x4C, 0x49, 0xB4, 0x23, 0xE9, 0x30, + 0x0C, 0x06, 0x03, 0x55, 0x1D, 0x13, 0x01, 0x01, 0xFF, 0x04, + 0x02, 0x30, 0x00, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x1D, 0x0F, + 0x01, 0x01, 0xFF, 0x04, 0x04, 0x03, 0x02, 0x03, 0xA8, 0x30, + 0x13, 0x06, 0x03, 0x55, 0x1D, 0x25, 0x04, 0x0C, 0x30, 0x0A, + 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, 0x05, 0x07, 0x03, 0x01, + 0x30, 0x11, 0x06, 0x09, 0x60, 0x86, 0x48, 0x01, 0x86, 0xF8, + 0x42, 0x01, 0x01, 0x04, 0x04, 0x03, 0x02, 0x06, 0x40, 0x30, + 0x05, 0x06, 0x03, 0x2B, 0x65, 0x70, 0x03, 0x41, 0x00, 0xF3, + 0xC2, 0xEF, 0x8B, 0x55, 0x65, 0x4F, 0xBC, 0xE3, 0xDF, 0xFC, + 0xD8, 0xA1, 0xAD, 0x8E, 0x43, 0x07, 0x73, 0xC8, 0x58, 0xC3, + 0x46, 0x0A, 0xC1, 0xF1, 0x4D, 0x3F, 0xFB, 0x3D, 0x78, 0xE6, + 0x76, 0x58, 0x26, 0xCE, 0xD7, 0x59, 0x55, 0xEC, 0xC5, 0xB5, + 0xB4, 0x05, 0xED, 0xF9, 0xD4, 0x97, 0x69, 0x66, 0xD6, 0x2C, + 0x1B, 0x43, 0x5A, 0x51, 0x5C, 0xBE, 0x10, 0x28, 0x95, 0xC4, + 0x96, 0xAF, 0x00 }; static const int sizeof_server_ed25519_cert = sizeof(server_ed25519_cert); /* ./certs/ed25519/server-ed25519-key.der, ED25519 */ static const unsigned char server_ed25519_key[] = { - 0x30, 0x52, 0x02, 0x01, 0x00, 0x30, 0x05, 0x06, 0x03, 0x2B, - 0x65, 0x70, 0x04, 0x22, 0x04, 0x20, 0x02, 0x2F, 0xC5, 0xFF, - 0xBA, 0x8E, 0xD0, 0xD2, 0xBF, 0x03, 0x8E, 0x76, 0x8F, 0xC8, - 0x86, 0x80, 0x71, 0x87, 0x97, 0x31, 0xE2, 0x40, 0xAC, 0xDF, - 0xBB, 0x90, 0x15, 0x52, 0x6E, 0x24, 0xA1, 0x39, 0xA1, 0x22, - 0x04, 0x20, 0x61, 0x5D, 0xEC, 0xB7, 0x45, 0x93, 0xC9, 0x84, - 0x7B, 0x68, 0x21, 0x4A, 0x4D, 0xF4, 0x04, 0x8B, 0xBD, 0xCD, - 0x6C, 0x5D, 0x3D, 0xB7, 0x62, 0x2C, 0x2D, 0x25, 0xC3, 0x22, - 0x49, 0xC8, 0x86, 0xF2 + 0x30, 0x2A, 0x30, 0x05, 0x06, 0x03, 0x2B, 0x65, 0x70, 0x03, + 0x21, 0x00, 0x23, 0xAA, 0x4D, 0x60, 0x50, 0xE0, 0x13, 0xD3, + 0x3A, 0xED, 0xAB, 0xF6, 0xA9, 0xCC, 0x4A, 0xFE, 0xD7, 0x4D, + 0x2F, 0xD2, 0x5B, 0x1A, 0x10, 0x05, 0xEF, 0x5A, 0x41, 0x25, + 0xCE, 0x1B, 0x53, 0x78 }; static const int sizeof_server_ed25519_key = sizeof(server_ed25519_key); /* ./certs/ed25519/ca-ed25519.der, ED25519 */ static const unsigned char ca_ed25519_cert[] = { - 0x30, 0x82, 0x02, 0x60, 0x30, 0x82, 0x02, 0x12, 0xA0, 0x03, - 0x02, 0x01, 0x02, 0x02, 0x10, 0x00, 0x80, 0xBA, 0x68, 0x77, - 0xEF, 0xA5, 0xE5, 0x42, 0x7D, 0xC6, 0x73, 0x2C, 0x54, 0x85, - 0xB8, 0x30, 0x05, 0x06, 0x03, 0x2B, 0x65, 0x70, 0x30, 0x81, - 0x9F, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, - 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, - 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, 0x61, - 0x6E, 0x61, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, - 0x07, 0x0C, 0x07, 0x42, 0x6F, 0x7A, 0x65, 0x6D, 0x61, 0x6E, - 0x31, 0x0D, 0x30, 0x0B, 0x06, 0x03, 0x55, 0x04, 0x04, 0x0C, - 0x04, 0x52, 0x6F, 0x6F, 0x74, 0x31, 0x10, 0x30, 0x0E, 0x06, - 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x07, 0x77, 0x6F, 0x6C, 0x66, - 0x53, 0x53, 0x4C, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, - 0x04, 0x0B, 0x0C, 0x07, 0x45, 0x44, 0x32, 0x35, 0x35, 0x31, - 0x39, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, - 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, - 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, - 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, - 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, + 0x30, 0x82, 0x02, 0x4C, 0x30, 0x82, 0x01, 0xFE, 0xA0, 0x03, + 0x02, 0x01, 0x02, 0x02, 0x01, 0x01, 0x30, 0x05, 0x06, 0x03, + 0x2B, 0x65, 0x70, 0x30, 0x81, 0x9D, 0x31, 0x0B, 0x30, 0x09, + 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, + 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, + 0x4D, 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, 0x31, 0x10, 0x30, + 0x0E, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, 0x07, 0x42, 0x6F, + 0x7A, 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x18, 0x30, 0x16, 0x06, + 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x0F, 0x77, 0x6F, 0x6C, 0x66, + 0x53, 0x53, 0x4C, 0x5F, 0x45, 0x64, 0x32, 0x35, 0x35, 0x31, + 0x39, 0x31, 0x15, 0x30, 0x13, 0x06, 0x03, 0x55, 0x04, 0x0B, + 0x0C, 0x0C, 0x52, 0x6F, 0x6F, 0x74, 0x2D, 0x45, 0x64, 0x32, + 0x35, 0x35, 0x31, 0x39, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, + 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, - 0x30, 0x22, 0x18, 0x0F, 0x32, 0x30, 0x31, 0x38, 0x30, 0x34, - 0x31, 0x32, 0x31, 0x36, 0x32, 0x32, 0x31, 0x37, 0x5A, 0x18, - 0x0F, 0x32, 0x30, 0x32, 0x31, 0x30, 0x31, 0x30, 0x37, 0x31, - 0x35, 0x32, 0x32, 0x31, 0x37, 0x5A, 0x30, 0x81, 0x9D, 0x31, - 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, - 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, - 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, - 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, - 0x07, 0x42, 0x6F, 0x7A, 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x0B, - 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x04, 0x0C, 0x02, 0x43, - 0x41, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x0A, - 0x0C, 0x07, 0x77, 0x6F, 0x6C, 0x66, 0x53, 0x53, 0x4C, 0x31, - 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x07, - 0x45, 0x44, 0x32, 0x35, 0x35, 0x31, 0x39, 0x31, 0x18, 0x30, - 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, - 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, - 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, - 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, - 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, - 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x30, 0x2A, 0x30, 0x05, - 0x06, 0x03, 0x2B, 0x65, 0x70, 0x03, 0x21, 0x00, 0x65, 0xAA, - 0x7F, 0x05, 0xA4, 0x04, 0x34, 0xA0, 0xEA, 0xAD, 0x1F, 0xA9, - 0x86, 0xF0, 0xD8, 0x7F, 0x72, 0xDF, 0xA9, 0x0E, 0x13, 0xA0, - 0x38, 0x66, 0x26, 0x5E, 0xEB, 0x48, 0x30, 0x80, 0x48, 0x49, - 0xA3, 0x60, 0x30, 0x5E, 0x30, 0x0C, 0x06, 0x03, 0x55, 0x1D, - 0x13, 0x04, 0x05, 0x30, 0x03, 0x01, 0x01, 0xFF, 0x30, 0x1D, - 0x06, 0x03, 0x55, 0x1D, 0x0E, 0x04, 0x16, 0x04, 0x14, 0x92, - 0x3F, 0x96, 0x72, 0x02, 0xFA, 0x61, 0x1C, 0x21, 0x6D, 0x88, - 0xDD, 0xEB, 0xDD, 0x3C, 0x9B, 0x17, 0xC4, 0x9F, 0xB7, 0x30, - 0x1F, 0x06, 0x03, 0x55, 0x1D, 0x23, 0x04, 0x18, 0x30, 0x16, - 0x80, 0x14, 0xFE, 0x01, 0x46, 0x7F, 0x6F, 0x2B, 0x3E, 0x1C, - 0xB0, 0x6F, 0xE1, 0xCC, 0x4D, 0x02, 0x25, 0xF7, 0x4D, 0x0A, - 0x95, 0xB8, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x1D, 0x0F, 0x01, - 0x01, 0xFF, 0x04, 0x04, 0x03, 0x02, 0x01, 0xC6, 0x30, 0x05, - 0x06, 0x03, 0x2B, 0x65, 0x70, 0x03, 0x41, 0x00, 0x4C, 0x40, - 0xD0, 0x7F, 0xBC, 0xFB, 0xF4, 0xA2, 0x1A, 0x58, 0xF6, 0x72, - 0xE3, 0xE8, 0xDA, 0x18, 0x0D, 0x94, 0xDC, 0x0E, 0xFD, 0xC1, - 0xE7, 0x02, 0xA5, 0x7A, 0xEE, 0xCB, 0xC2, 0x7E, 0xFA, 0xA1, - 0xFC, 0x15, 0x9A, 0xFE, 0x1E, 0xE0, 0x37, 0xDF, 0x7F, 0xAB, - 0x76, 0x50, 0x06, 0xD4, 0x3D, 0x1A, 0x65, 0x73, 0x3F, 0x92, - 0xD4, 0x44, 0x62, 0xA7, 0x4C, 0xB3, 0x2A, 0x01, 0x87, 0xE3, - 0x06, 0x06 + 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, + 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, + 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, + 0x63, 0x6F, 0x6D, 0x30, 0x1E, 0x17, 0x0D, 0x32, 0x31, 0x30, + 0x33, 0x31, 0x30, 0x30, 0x36, 0x34, 0x39, 0x30, 0x33, 0x5A, + 0x17, 0x0D, 0x32, 0x33, 0x31, 0x32, 0x30, 0x35, 0x30, 0x36, + 0x34, 0x39, 0x30, 0x33, 0x5A, 0x30, 0x81, 0x9B, 0x31, 0x0B, + 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, + 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, + 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, 0x31, + 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, 0x07, + 0x42, 0x6F, 0x7A, 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x18, 0x30, + 0x16, 0x06, 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x0F, 0x77, 0x6F, + 0x6C, 0x66, 0x53, 0x53, 0x4C, 0x5F, 0x65, 0x64, 0x32, 0x35, + 0x35, 0x31, 0x39, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55, + 0x04, 0x0B, 0x0C, 0x0A, 0x43, 0x41, 0x2D, 0x65, 0x64, 0x32, + 0x35, 0x35, 0x31, 0x39, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, + 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, + 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, + 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, + 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, + 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, + 0x63, 0x6F, 0x6D, 0x30, 0x2A, 0x30, 0x05, 0x06, 0x03, 0x2B, + 0x65, 0x70, 0x03, 0x21, 0x00, 0x42, 0x3B, 0x7A, 0xF9, 0x82, + 0xCF, 0xF9, 0xDF, 0x19, 0xDD, 0xF3, 0xF0, 0x32, 0x29, 0x6D, + 0xFA, 0xFD, 0x76, 0x4F, 0x68, 0xC2, 0xC2, 0xE0, 0x6C, 0x47, + 0xAE, 0xC2, 0x55, 0x68, 0xAC, 0x0D, 0x4D, 0xA3, 0x63, 0x30, + 0x61, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x0E, 0x04, 0x16, + 0x04, 0x14, 0x74, 0xD5, 0x38, 0x19, 0x5E, 0x83, 0xB9, 0x03, + 0xF8, 0x01, 0x8A, 0x35, 0x35, 0xBB, 0x89, 0x4C, 0x49, 0xB4, + 0x23, 0xE9, 0x30, 0x1F, 0x06, 0x03, 0x55, 0x1D, 0x23, 0x04, + 0x18, 0x30, 0x16, 0x80, 0x14, 0xFA, 0xBA, 0x5B, 0x76, 0x1D, + 0xF1, 0x1D, 0x1D, 0x4D, 0x74, 0x48, 0xD8, 0x98, 0x3B, 0x56, + 0xEF, 0xB3, 0x14, 0xF3, 0xDE, 0x30, 0x0F, 0x06, 0x03, 0x55, + 0x1D, 0x13, 0x01, 0x01, 0xFF, 0x04, 0x05, 0x30, 0x03, 0x01, + 0x01, 0xFF, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x1D, 0x0F, 0x01, + 0x01, 0xFF, 0x04, 0x04, 0x03, 0x02, 0x01, 0x86, 0x30, 0x05, + 0x06, 0x03, 0x2B, 0x65, 0x70, 0x03, 0x41, 0x00, 0xDA, 0xFE, + 0x58, 0x53, 0x89, 0x43, 0x85, 0x98, 0x35, 0xDC, 0x13, 0x1C, + 0xA3, 0xF1, 0x1F, 0x8D, 0x26, 0xBE, 0xB6, 0xA2, 0xFC, 0xB7, + 0xFE, 0x9C, 0xB9, 0x35, 0x69, 0x31, 0x7E, 0xD4, 0xB9, 0x11, + 0x45, 0x16, 0xA2, 0x29, 0x35, 0xA9, 0x74, 0xA7, 0x97, 0xDA, + 0x7E, 0x71, 0x4F, 0xB1, 0x72, 0x5D, 0x75, 0x17, 0xAC, 0xE3, + 0xF6, 0xB8, 0xCE, 0x1E, 0xE4, 0x8A, 0x95, 0xBA, 0xCD, 0x1D, + 0xCE, 0x0D }; static const int sizeof_ca_ed25519_cert = sizeof(ca_ed25519_cert); /* ./certs/ed25519/client-ed25519.der, ED25519 */ static const unsigned char client_ed25519_cert[] = { - 0x30, 0x82, 0x02, 0x58, 0x30, 0x82, 0x02, 0x0A, 0xA0, 0x03, - 0x02, 0x01, 0x02, 0x02, 0x10, 0x00, 0x8F, 0x2F, 0x35, 0xB2, - 0x53, 0xBD, 0x4F, 0x92, 0xD1, 0xFF, 0x1D, 0x4B, 0x40, 0xA5, - 0x49, 0x30, 0x05, 0x06, 0x03, 0x2B, 0x65, 0x70, 0x30, 0x81, - 0xA1, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, - 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, - 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, 0x61, - 0x6E, 0x61, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, - 0x07, 0x0C, 0x07, 0x42, 0x6F, 0x7A, 0x65, 0x6D, 0x61, 0x6E, - 0x31, 0x0F, 0x30, 0x0D, 0x06, 0x03, 0x55, 0x04, 0x04, 0x0C, - 0x06, 0x63, 0x6C, 0x69, 0x65, 0x6E, 0x74, 0x31, 0x10, 0x30, - 0x0E, 0x06, 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x07, 0x77, 0x6F, - 0x6C, 0x66, 0x53, 0x53, 0x4C, 0x31, 0x10, 0x30, 0x0E, 0x06, - 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x07, 0x45, 0x44, 0x32, 0x35, - 0x35, 0x31, 0x39, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, - 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, - 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x31, - 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, - 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, - 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, - 0x6F, 0x6D, 0x30, 0x22, 0x18, 0x0F, 0x32, 0x30, 0x31, 0x38, - 0x30, 0x34, 0x31, 0x32, 0x31, 0x36, 0x32, 0x32, 0x31, 0x37, - 0x5A, 0x18, 0x0F, 0x32, 0x30, 0x32, 0x31, 0x30, 0x31, 0x30, - 0x37, 0x31, 0x35, 0x32, 0x32, 0x31, 0x37, 0x5A, 0x30, 0x81, - 0xA1, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, - 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, - 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, 0x61, - 0x6E, 0x61, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, - 0x07, 0x0C, 0x07, 0x42, 0x6F, 0x7A, 0x65, 0x6D, 0x61, 0x6E, - 0x31, 0x0F, 0x30, 0x0D, 0x06, 0x03, 0x55, 0x04, 0x04, 0x0C, - 0x06, 0x63, 0x6C, 0x69, 0x65, 0x6E, 0x74, 0x31, 0x10, 0x30, - 0x0E, 0x06, 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x07, 0x77, 0x6F, - 0x6C, 0x66, 0x53, 0x53, 0x4C, 0x31, 0x10, 0x30, 0x0E, 0x06, - 0x03, 0x55, 0x04, 0x0B, 0x0C, 0x07, 0x45, 0x44, 0x32, 0x35, - 0x35, 0x31, 0x39, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, - 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, - 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x31, - 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, - 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, - 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, - 0x6F, 0x6D, 0x30, 0x2A, 0x30, 0x05, 0x06, 0x03, 0x2B, 0x65, - 0x70, 0x03, 0x21, 0x00, 0xA2, 0xF1, 0x26, 0x40, 0x9B, 0xA2, - 0x59, 0xDA, 0xDB, 0xE6, 0x15, 0x7F, 0x9A, 0x11, 0xB5, 0x48, - 0x5F, 0x55, 0xBA, 0x5E, 0xED, 0x46, 0xF7, 0x98, 0x67, 0xBE, - 0x0C, 0x93, 0xE3, 0xA4, 0x8E, 0x18, 0xA3, 0x52, 0x30, 0x50, + 0x30, 0x82, 0x03, 0x54, 0x30, 0x82, 0x03, 0x06, 0xA0, 0x03, + 0x02, 0x01, 0x02, 0x02, 0x14, 0x40, 0x66, 0xC6, 0x11, 0xBC, + 0x00, 0xF8, 0x51, 0xF9, 0xE4, 0x4B, 0xBB, 0x0B, 0xAD, 0xC1, + 0x09, 0x38, 0xB0, 0x4A, 0xE4, 0x30, 0x05, 0x06, 0x03, 0x2B, + 0x65, 0x70, 0x30, 0x81, 0x9F, 0x31, 0x0B, 0x30, 0x09, 0x06, + 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x10, + 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, 0x4D, + 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, 0x31, 0x10, 0x30, 0x0E, + 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, 0x07, 0x42, 0x6F, 0x7A, + 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x18, 0x30, 0x16, 0x06, 0x03, + 0x55, 0x04, 0x0A, 0x0C, 0x0F, 0x77, 0x6F, 0x6C, 0x66, 0x53, + 0x53, 0x4C, 0x5F, 0x65, 0x64, 0x32, 0x35, 0x35, 0x31, 0x39, + 0x31, 0x17, 0x30, 0x15, 0x06, 0x03, 0x55, 0x04, 0x0B, 0x0C, + 0x0E, 0x43, 0x6C, 0x69, 0x65, 0x6E, 0x74, 0x2D, 0x65, 0x64, + 0x32, 0x35, 0x35, 0x31, 0x39, 0x31, 0x18, 0x30, 0x16, 0x06, + 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, 0x2E, + 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, + 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, + 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, 0x6E, + 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, + 0x2E, 0x63, 0x6F, 0x6D, 0x30, 0x1E, 0x17, 0x0D, 0x32, 0x31, + 0x30, 0x33, 0x31, 0x30, 0x30, 0x36, 0x34, 0x39, 0x30, 0x33, + 0x5A, 0x17, 0x0D, 0x32, 0x33, 0x31, 0x32, 0x30, 0x35, 0x30, + 0x36, 0x34, 0x39, 0x30, 0x33, 0x5A, 0x30, 0x81, 0x9F, 0x31, + 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, + 0x55, 0x53, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, + 0x08, 0x0C, 0x07, 0x4D, 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, + 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, + 0x07, 0x42, 0x6F, 0x7A, 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x18, + 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x0F, 0x77, + 0x6F, 0x6C, 0x66, 0x53, 0x53, 0x4C, 0x5F, 0x65, 0x64, 0x32, + 0x35, 0x35, 0x31, 0x39, 0x31, 0x17, 0x30, 0x15, 0x06, 0x03, + 0x55, 0x04, 0x0B, 0x0C, 0x0E, 0x43, 0x6C, 0x69, 0x65, 0x6E, + 0x74, 0x2D, 0x65, 0x64, 0x32, 0x35, 0x35, 0x31, 0x39, 0x31, + 0x18, 0x30, 0x16, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, + 0x77, 0x77, 0x77, 0x2E, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, + 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, + 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, + 0x16, 0x10, 0x69, 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, + 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x30, 0x2A, + 0x30, 0x05, 0x06, 0x03, 0x2B, 0x65, 0x70, 0x03, 0x21, 0x00, + 0xE6, 0x57, 0x5B, 0x13, 0x1B, 0xC7, 0x51, 0x14, 0x6B, 0xED, + 0x3B, 0xF5, 0xD1, 0xFA, 0xAB, 0x9E, 0x6C, 0xB6, 0xEB, 0x02, + 0x09, 0xA3, 0x99, 0xF5, 0x6E, 0xBF, 0x9D, 0x3C, 0xFE, 0x54, + 0x39, 0xE6, 0xA3, 0x82, 0x01, 0x50, 0x30, 0x82, 0x01, 0x4C, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x0E, 0x04, 0x16, 0x04, - 0x14, 0xFE, 0x01, 0x46, 0x7F, 0x6F, 0x2B, 0x3E, 0x1C, 0xB0, - 0x6F, 0xE1, 0xCC, 0x4D, 0x02, 0x25, 0xF7, 0x4D, 0x0A, 0x95, - 0xB8, 0x30, 0x1F, 0x06, 0x03, 0x55, 0x1D, 0x23, 0x04, 0x18, - 0x30, 0x16, 0x80, 0x14, 0xFE, 0x01, 0x46, 0x7F, 0x6F, 0x2B, - 0x3E, 0x1C, 0xB0, 0x6F, 0xE1, 0xCC, 0x4D, 0x02, 0x25, 0xF7, - 0x4D, 0x0A, 0x95, 0xB8, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x1D, - 0x0F, 0x01, 0x01, 0xFF, 0x04, 0x04, 0x03, 0x02, 0x06, 0xC0, - 0x30, 0x05, 0x06, 0x03, 0x2B, 0x65, 0x70, 0x03, 0x41, 0x00, - 0x29, 0xF6, 0x69, 0xE2, 0xB9, 0x73, 0x12, 0xD1, 0x64, 0xEB, - 0x8F, 0xE9, 0x6B, 0x61, 0xDB, 0x5F, 0xE9, 0xA7, 0x62, 0x6C, - 0x10, 0x89, 0x41, 0x80, 0xE3, 0xE8, 0xFD, 0x1F, 0xD0, 0x13, - 0xAE, 0x95, 0x00, 0xAF, 0xF7, 0x77, 0xE1, 0x22, 0x32, 0xAD, - 0x46, 0x4F, 0xDC, 0x7E, 0xFE, 0xAE, 0xBC, 0x8A, 0x1F, 0x96, - 0x0A, 0xDA, 0x9F, 0xC9, 0x93, 0x52, 0x27, 0x18, 0xB0, 0x8B, - 0xDA, 0xBE, 0x81, 0x09 + 0x14, 0xFE, 0x41, 0x5E, 0x3E, 0x81, 0xE2, 0x2E, 0x46, 0xB3, + 0x3E, 0x47, 0x89, 0x90, 0xD4, 0xC2, 0xB4, 0x8E, 0x11, 0xD6, + 0x8A, 0x30, 0x81, 0xDF, 0x06, 0x03, 0x55, 0x1D, 0x23, 0x04, + 0x81, 0xD7, 0x30, 0x81, 0xD4, 0x80, 0x14, 0xFE, 0x41, 0x5E, + 0x3E, 0x81, 0xE2, 0x2E, 0x46, 0xB3, 0x3E, 0x47, 0x89, 0x90, + 0xD4, 0xC2, 0xB4, 0x8E, 0x11, 0xD6, 0x8A, 0xA1, 0x81, 0xA5, + 0xA4, 0x81, 0xA2, 0x30, 0x81, 0x9F, 0x31, 0x0B, 0x30, 0x09, + 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, + 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0C, 0x07, + 0x4D, 0x6F, 0x6E, 0x74, 0x61, 0x6E, 0x61, 0x31, 0x10, 0x30, + 0x0E, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0C, 0x07, 0x42, 0x6F, + 0x7A, 0x65, 0x6D, 0x61, 0x6E, 0x31, 0x18, 0x30, 0x16, 0x06, + 0x03, 0x55, 0x04, 0x0A, 0x0C, 0x0F, 0x77, 0x6F, 0x6C, 0x66, + 0x53, 0x53, 0x4C, 0x5F, 0x65, 0x64, 0x32, 0x35, 0x35, 0x31, + 0x39, 0x31, 0x17, 0x30, 0x15, 0x06, 0x03, 0x55, 0x04, 0x0B, + 0x0C, 0x0E, 0x43, 0x6C, 0x69, 0x65, 0x6E, 0x74, 0x2D, 0x65, + 0x64, 0x32, 0x35, 0x35, 0x31, 0x39, 0x31, 0x18, 0x30, 0x16, + 0x06, 0x03, 0x55, 0x04, 0x03, 0x0C, 0x0F, 0x77, 0x77, 0x77, + 0x2E, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, 0x6C, 0x2E, 0x63, + 0x6F, 0x6D, 0x31, 0x1F, 0x30, 0x1D, 0x06, 0x09, 0x2A, 0x86, + 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x01, 0x16, 0x10, 0x69, + 0x6E, 0x66, 0x6F, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, + 0x6C, 0x2E, 0x63, 0x6F, 0x6D, 0x82, 0x14, 0x40, 0x66, 0xC6, + 0x11, 0xBC, 0x00, 0xF8, 0x51, 0xF9, 0xE4, 0x4B, 0xBB, 0x0B, + 0xAD, 0xC1, 0x09, 0x38, 0xB0, 0x4A, 0xE4, 0x30, 0x0C, 0x06, + 0x03, 0x55, 0x1D, 0x13, 0x04, 0x05, 0x30, 0x03, 0x01, 0x01, + 0xFF, 0x30, 0x1C, 0x06, 0x03, 0x55, 0x1D, 0x11, 0x04, 0x15, + 0x30, 0x13, 0x82, 0x0B, 0x65, 0x78, 0x61, 0x6D, 0x70, 0x6C, + 0x65, 0x2E, 0x63, 0x6F, 0x6D, 0x87, 0x04, 0x7F, 0x00, 0x00, + 0x01, 0x30, 0x1D, 0x06, 0x03, 0x55, 0x1D, 0x25, 0x04, 0x16, + 0x30, 0x14, 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, 0x05, 0x07, + 0x03, 0x01, 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, 0x05, 0x07, + 0x03, 0x02, 0x30, 0x05, 0x06, 0x03, 0x2B, 0x65, 0x70, 0x03, + 0x41, 0x00, 0xE0, 0x87, 0xE2, 0xCE, 0xD3, 0x87, 0x77, 0x9D, + 0xF7, 0x44, 0xC0, 0x73, 0x00, 0xFF, 0x07, 0x6D, 0x2E, 0x90, + 0x90, 0x5C, 0xBF, 0x30, 0x46, 0x9C, 0x75, 0xA9, 0x48, 0x50, + 0x8A, 0xDA, 0x09, 0x0F, 0xA8, 0xA8, 0x04, 0xB4, 0x33, 0xC8, + 0xF4, 0x28, 0x61, 0x9E, 0xC2, 0xA5, 0x19, 0xB7, 0x70, 0x1E, + 0x69, 0xCD, 0x49, 0x5C, 0x9A, 0xF3, 0x81, 0xE0, 0xDE, 0x38, + 0xB3, 0x37, 0xFF, 0x33, 0xBB, 0x07 }; static const int sizeof_client_ed25519_cert = sizeof(client_ed25519_cert); /* ./certs/ed25519/client-ed25519-key.der, ED25519 */ static const unsigned char client_ed25519_key[] = { - 0x30, 0x52, 0x02, 0x01, 0x00, 0x30, 0x05, 0x06, 0x03, 0x2B, - 0x65, 0x70, 0x04, 0x22, 0x04, 0x20, 0x27, 0xA3, 0x34, 0x2A, - 0x35, 0xD4, 0xBB, 0xB8, 0xE1, 0xDC, 0xD8, 0xEC, 0x0F, 0xC1, - 0xA0, 0xD1, 0xA2, 0x5C, 0xF9, 0x06, 0xF0, 0x44, 0x5D, 0x3B, - 0x97, 0x4D, 0xBD, 0xDF, 0x4A, 0x3B, 0xA3, 0x4E, 0xA1, 0x22, - 0x04, 0x20, 0xA2, 0xF1, 0x26, 0x40, 0x9B, 0xA2, 0x59, 0xDA, - 0xDB, 0xE6, 0x15, 0x7F, 0x9A, 0x11, 0xB5, 0x48, 0x5F, 0x55, - 0xBA, 0x5E, 0xED, 0x46, 0xF7, 0x98, 0x67, 0xBE, 0x0C, 0x93, - 0xE3, 0xA4, 0x8E, 0x18 + 0x30, 0x2A, 0x30, 0x05, 0x06, 0x03, 0x2B, 0x65, 0x70, 0x03, + 0x21, 0x00, 0xE6, 0x57, 0x5B, 0x13, 0x1B, 0xC7, 0x51, 0x14, + 0x6B, 0xED, 0x3B, 0xF5, 0xD1, 0xFA, 0xAB, 0x9E, 0x6C, 0xB6, + 0xEB, 0x02, 0x09, 0xA3, 0x99, 0xF5, 0x6E, 0xBF, 0x9D, 0x3C, + 0xFE, 0x54, 0x39, 0xE6 }; static const int sizeof_client_ed25519_key = sizeof(client_ed25519_key); diff --git a/source/libwolfssl/crl.h b/source/libwolfssl/crl.h index 170f78eb..9b3ec3f6 100644 --- a/source/libwolfssl/crl.h +++ b/source/libwolfssl/crl.h @@ -1,6 +1,6 @@ /* crl.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -27,8 +27,8 @@ #ifdef HAVE_CRL -#include -#include +#include +#include #ifdef __cplusplus extern "C" { diff --git a/source/libwolfssl/error-ssl.h b/source/libwolfssl/error-ssl.h index 86d4e7cd..f2e58094 100644 --- a/source/libwolfssl/error-ssl.h +++ b/source/libwolfssl/error-ssl.h @@ -1,6 +1,6 @@ /* error-ssl.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -24,7 +24,7 @@ #ifndef WOLFSSL_ERROR_H #define WOLFSSL_ERROR_H -#include /* pull in wolfCrypt errors */ +#include /* pull in wolfCrypt errors */ #ifdef __cplusplus extern "C" { @@ -169,6 +169,10 @@ enum wolfSSL_ErrorCodes { TLS13_SECRET_CB_E = -438, /* TLS1.3 secret Cb fcn failure */ DTLS_SIZE_ERROR = -439, /* Trying to send too much data */ NO_CERT_ERROR = -440, /* TLS1.3 - no cert set error */ + APP_DATA_READY = -441, /* DTLS1.2 application data ready for read */ + TOO_MUCH_EARLY_DATA = -442, /* Too much Early data */ + + SOCKET_FILTERED_E = -443, /* Session stopped by network filter */ /* add strings to wolfSSL_ERR_reason_error_string in internal.c !!!!! */ diff --git a/source/libwolfssl/internal.h b/source/libwolfssl/internal.h index 7a425fb5..2510ed66 100644 --- a/source/libwolfssl/internal.h +++ b/source/libwolfssl/internal.h @@ -1,6 +1,6 @@ /* internal.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -25,101 +25,113 @@ #define WOLFSSL_INT_H -#include -#include +#include +#include #ifdef HAVE_CRL - #include + #include #endif -#include +#include #ifndef NO_DES3 - #include + #include #endif #ifndef NO_HC128 - #include + #include #endif #ifndef NO_RABBIT - #include + #include #endif #ifdef HAVE_CHACHA - #include + #include #endif #ifndef NO_ASN - #include - #include + #include + #include #endif #ifndef NO_MD5 - #include + #include #endif #ifndef NO_SHA - #include + #include #endif #ifndef NO_AES - #include + #include #endif #ifdef HAVE_POLY1305 - #include + #include +#endif +#if defined(HAVE_CHACHA) && defined(HAVE_POLY1305) && defined(OPENSSL_EXTRA) + #include #endif #ifdef HAVE_CAMELLIA - #include + #include #endif -#include +#include #ifndef NO_HMAC - #include + #include #endif #ifndef NO_RC4 - #include + #include #endif #ifndef NO_SHA256 - #include + #include #endif #if defined(WOLFSSL_SHA384) - #include + #include #endif #ifdef HAVE_OCSP - #include + #include #endif #ifdef WOLFSSL_SHA384 - #include + #include #endif #ifdef WOLFSSL_SHA512 - #include + #include #endif #ifdef HAVE_AESGCM - #include + #include #endif #ifdef WOLFSSL_RIPEMD - #include + #include #endif #ifdef HAVE_IDEA - #include + #include #endif #ifndef NO_RSA - #include + #include #endif #ifdef HAVE_ECC - #include + #include #endif #ifndef NO_DH - #include + #include #endif #ifdef HAVE_ED25519 - #include + #include #endif #ifdef HAVE_CURVE25519 - #include + #include #endif #ifdef HAVE_ED448 - #include + #include #endif #ifdef HAVE_CURVE448 - #include + #include +#endif +#ifndef WOLFSSL_NO_DEF_TICKET_ENC_CB + #if defined(HAVE_CHACHA) && defined(HAVE_POLY1305) && \ + !defined(WOLFSSL_TICKET_ENC_AES128_GCM) && \ + !defined(WOLFSSL_TICKET_ENC_AES256_GCM) + #include + #else + #include + #endif #endif -#include -#include +#include +#include #if defined(WOLFSSL_CALLBACKS) || defined(OPENSSL_EXTRA) - #include + #include #endif #ifdef WOLFSSL_CALLBACKS #include @@ -146,6 +158,8 @@ /* do nothing, just don't pick Unix */ #elif defined(FREERTOS) || defined(FREERTOS_TCP) || defined(WOLFSSL_SAFERTOS) /* do nothing */ +#elif defined(RTTHREAD) + /* do nothing */ #elif defined(EBSNET) /* do nothing */ #elif defined(FREESCALE_MQX) || defined(FREESCALE_KSDK_MQX) @@ -197,7 +211,11 @@ #endif #endif #if defined(OPENSSL_EXTRA) && !defined(NO_FILESYSTEM) - #include /* for close of BIO */ + #ifdef FUSION_RTOS + #include + #else + #include /* for close of BIO */ + #endif #endif #endif @@ -212,12 +230,12 @@ #endif #ifdef WOLFSSL_ASYNC_CRYPT - #include + #include #endif #ifdef OPENSSL_EXTRA #ifdef WOLFCRYPT_HAVE_SRP - #include + #include #endif #endif @@ -843,6 +861,13 @@ #endif #endif +#if !defined(WOLFCRYPT_ONLY) && defined(NO_PSK) && \ + (defined(NO_DH) || !defined(HAVE_ANON)) && \ + defined(NO_RSA) && !defined(HAVE_ECC) && \ + !defined(HAVE_ED25519) && !defined(HAVE_ED448) + #error "No cipher suites avaialble with this build" +#endif + #ifdef WOLFSSL_MULTICAST #if defined(HAVE_NULL_CIPHER) && !defined(NO_SHA256) #define BUILD_WDM_WITH_NULL_SHA256 @@ -1139,7 +1164,8 @@ enum { #endif /* WOLFSSL_MULTICAST */ #ifndef WOLFSSL_MAX_MTU - #define WOLFSSL_MAX_MTU 1500 + /* 1500 - 100 bytes to account for UDP and IP headers */ + #define WOLFSSL_MAX_MTU 1400 #endif /* WOLFSSL_MAX_MTU */ @@ -1169,8 +1195,8 @@ enum { #if (WOLFSSL_MAX_DHKEY_BITS % 8) #error DH maximum bit size must be multiple of 8 #endif -#if (WOLFSSL_MAX_DHKEY_BITS > 16000) - #error DH maximum bit size must not be greater than 16000 +#if (WOLFSSL_MAX_DHKEY_BITS > 16384) + #error DH maximum bit size must not be greater than 16384 #endif #define MAX_DHKEY_SZ (WOLFSSL_MAX_DHKEY_BITS / 8) @@ -1230,7 +1256,7 @@ enum Misc { /* pre RSA and all master */ #if defined(WOLFSSL_MYSQL_COMPATIBLE) || \ (defined(USE_FAST_MATH) && defined(FP_MAX_BITS) && FP_MAX_BITS >= 16384) -#ifndef NO_PSK +#if !defined(NO_PSK) && defined(USE_FAST_MATH) ENCRYPT_LEN = (FP_MAX_BITS / 2 / 8) + MAX_PSK_ID_LEN + 2, #else ENCRYPT_LEN = 1024, /* allow 8192 bit static buffer */ @@ -1324,9 +1350,9 @@ enum Misc { DTLS_EXPORT_PRO = 165,/* wolfSSL protocol for serialized session */ DTLS_EXPORT_STATE_PRO = 166,/* wolfSSL protocol for serialized state */ DTLS_EXPORT_VERSION = 4, /* wolfSSL version for serialized session */ - DTLS_EXPORT_OPT_SZ = 60, /* amount of bytes used from Options */ + DTLS_EXPORT_OPT_SZ = 61, /* amount of bytes used from Options */ DTLS_EXPORT_VERSION_3 = 3, /* wolfSSL version before TLS 1.3 addition */ - DTLS_EXPORT_OPT_SZ_3 = 59, /* amount of bytes used from Options */ + DTLS_EXPORT_OPT_SZ_3 = 60, /* amount of bytes used from Options */ DTLS_EXPORT_KEY_SZ = 325 + (DTLS_SEQ_SZ * 2), /* max amount of bytes used from Keys */ DTLS_EXPORT_MIN_KEY_SZ = 85 + (DTLS_SEQ_SZ * 2), @@ -1334,6 +1360,9 @@ enum Misc { DTLS_EXPORT_SPC_SZ = 16, /* amount of bytes used from CipherSpecs */ DTLS_EXPORT_LEN = 2, /* 2 bytes for length and protocol */ DTLS_EXPORT_IP = 46, /* max ip size IPv4 mapped IPv6 */ + DTLS_MTU_ADDITIONAL_READ_BUFFER = 100, /* Additional bytes to read so that + * we can work with a peer that has + * a slightly different MTU than us. */ MAX_EXPORT_BUFFER = 514, /* max size of buffer for exporting */ MAX_EXPORT_STATE_BUFFER = (DTLS_EXPORT_MIN_KEY_SZ) + (3 * DTLS_EXPORT_LEN), /* max size of buffer for exporting state */ @@ -1467,7 +1496,11 @@ enum Misc { MAX_WOLFSSL_FILE_SIZE = 1024ul * 1024ul * 4, /* 4 mb file size alloc limit */ #endif +#ifdef WOLFSSL_HAPROXY + MAX_X509_SIZE = 3072, /* max static x509 buffer size */ +#else MAX_X509_SIZE = 2048, /* max static x509 buffer size */ +#endif CERT_MIN_SIZE = 256, /* min PEM cert size with header/footer */ MAX_NTRU_PUB_KEY_SZ = 1027, /* NTRU max for now */ @@ -1583,6 +1616,26 @@ enum Misc { #define SESSION_TICKET_HINT_DEFAULT 300 #endif +#if !defined(WOLFSSL_NO_DEF_TICKET_ENC_CB) && !defined(WOLFSSL_NO_SERVER) + /* Check chosen encryption is available. */ + #if !(defined(HAVE_CHACHA) && defined(HAVE_POLY1305)) && \ + defined(WOLFSSL_TICKET_ENC_CHACHA20_POLY1305) + #error "ChaCha20-Poly1305 not available for default ticket encryption" + #endif + #if !defined(HAVE_AESGCM) && (defined(WOLFSSL_TICKET_ENC_AES128_GCM) || \ + defined(WOLFSSL_TICKET_ENC_AES256_GCM)) + #error "AES-GCM not available for default ticket encryption" + #endif + + #ifndef WOLFSSL_TICKET_KEY_LIFETIME + /* Default lifetime is 1 hour from issue of first ticket with key. */ + #define WOLFSSL_TICKET_KEY_LIFETIME (60 * 60) + #endif + #if WOLFSSL_TICKET_KEY_LIFETIME <= SESSION_TICKET_HINT_DEFAULT + #error "Ticket Key lifetime must be longer than ticket life hint." + #endif +#endif + /* don't use extra 3/4k stack space unless need to */ #ifdef HAVE_NTRU @@ -1646,6 +1699,21 @@ WOLFSSL_LOCAL ProtocolVersion MakeTLSv1_3(void); #endif #endif +struct WOLFSSL_BY_DIR_HASH { + unsigned long hash_value; + int last_suffix; +}; + +struct WOLFSSL_BY_DIR_entry { + char* dir_name; + int dir_type; + WOLF_STACK_OF(WOLFSSL_BY_DIR_HASH) *hashes; +}; + +struct WOLFSSL_BY_DIR { + WOLF_STACK_OF(WOLFSSL_BY_DIR_entry) *dir_entry; + wolfSSL_Mutex lock; /* dir list lock */ +}; /* wolfSSL method type */ struct WOLFSSL_METHOD { @@ -1678,7 +1746,7 @@ WOLFSSL_LOCAL int DoApplicationData(WOLFSSL* ssl, byte* input, word32* inOutIdx) WOLFSSL_LOCAL int HandleTlsResumption(WOLFSSL* ssl, int bogusID, Suites* clSuites); #ifdef WOLFSSL_TLS13 -WOLFSSL_LOCAL int FindSuite(Suites* suites, byte first, byte second); +WOLFSSL_LOCAL byte SuiteMac(byte* suite); #endif WOLFSSL_LOCAL int DoClientHello(WOLFSSL* ssl, const byte* input, word32*, word32); @@ -1692,6 +1760,11 @@ WOLFSSL_LOCAL int CompleteServerHello(WOLFSSL *ssl); WOLFSSL_LOCAL int CheckVersion(WOLFSSL *ssl, ProtocolVersion pv); WOLFSSL_LOCAL int PickHashSigAlgo(WOLFSSL* ssl, const byte* hashSigAlgo, word32 hashSigAlgoSz); +#ifdef WOLF_CRYPTO_CB +WOLFSSL_LOCAL int CreateDevPrivateKey(void** pkey, byte* buffer, word32 length, + int hsType, int label, int id, + void* heap, int devId); +#endif WOLFSSL_LOCAL int DecodePrivateKey(WOLFSSL *ssl, word16* length); #ifdef HAVE_PK_CALLBACKS WOLFSSL_LOCAL int GetPrivateKeySigSize(WOLFSSL* ssl); @@ -1713,9 +1786,11 @@ WOLFSSL_LOCAL int HashOutput(WOLFSSL* ssl, const byte* output, int sz, int ivSz); WOLFSSL_LOCAL int HashInput(WOLFSSL* ssl, const byte* input, int sz); -#if defined(OPENSSL_ALL) || defined(HAVE_STUNNEL) || defined(WOLFSSL_NGINX) || defined(WOLFSSL_HAPROXY) +#ifdef HAVE_SNI +#ifndef NO_WOLFSSL_SERVER WOLFSSL_LOCAL int SNI_Callback(WOLFSSL* ssl); #endif +#endif #ifdef WOLFSSL_TLS13 WOLFSSL_LOCAL int DecryptTls13(WOLFSSL* ssl, byte* output, const byte* input, word16 sz, const byte* aad, word16 aadSz); @@ -1727,6 +1802,7 @@ WOLFSSL_LOCAL int DoTls13HandShakeMsg(WOLFSSL* ssl, byte* input, WOLFSSL_LOCAL int DoTls13ServerHello(WOLFSSL* ssl, const byte* input, word32* inOutIdx, word32 helloSz, byte* extMsgType); +WOLFSSL_LOCAL int RestartHandshakeHash(WOLFSSL* ssl); #endif int TimingPadVerify(WOLFSSL* ssl, const byte* input, int padLen, int t, int pLen, int content); @@ -1827,9 +1903,10 @@ WOLFSSL_LOCAL void InitSuitesHashSigAlgo(Suites* suites, int haveECDSAsig, int haveRSAsig, int haveAnon, int tls1_2, int keySz); WOLFSSL_LOCAL void InitSuites(Suites*, ProtocolVersion, int, word16, word16, - word16, word16, word16, word16, word16, int); + word16, word16, word16, word16, word16, word16, int); WOLFSSL_LOCAL int MatchSuite(WOLFSSL* ssl, Suites* peerSuites); WOLFSSL_LOCAL int SetCipherList(WOLFSSL_CTX*, Suites*, const char* list); +WOLFSSL_LOCAL int SetSuitesHashSigAlgo(Suites*, const char* list); #ifndef PSK_TYPES_DEFINED typedef unsigned int (*wc_psk_client_callback)(WOLFSSL*, const char*, char*, @@ -1837,11 +1914,15 @@ WOLFSSL_LOCAL int SetCipherList(WOLFSSL_CTX*, Suites*, const char* list); typedef unsigned int (*wc_psk_server_callback)(WOLFSSL*, const char*, unsigned char*, unsigned int); #ifdef WOLFSSL_TLS13 + typedef unsigned int (*wc_psk_client_cs_callback)(WOLFSSL*, const char*, + char*, unsigned int, unsigned char*, unsigned int, + const char* cipherName); typedef unsigned int (*wc_psk_client_tls13_callback)(WOLFSSL*, const char*, char*, unsigned int, unsigned char*, unsigned int, - const char**); + const char** cipherName); typedef unsigned int (*wc_psk_server_tls13_callback)(WOLFSSL*, const char*, - unsigned char*, unsigned int, const char**); + unsigned char*, unsigned int, + const char** cipherName); #endif #endif /* PSK_TYPES_DEFINED */ #if defined(WOLFSSL_DTLS) && defined(WOLFSSL_SESSION_EXPORT) && \ @@ -1998,18 +2079,22 @@ struct WOLFSSL_CERT_MANAGER { #ifndef NO_WOLFSSL_CM_VERIFY VerifyCallback verifyCallback; /* Verify callback */ #endif - CallbackCACache caCacheCallback; /* CA cache addition callback */ - CbMissingCRL cbMissingCRL; /* notify through cb of missing crl */ - CbOCSPIO ocspIOCb; /* I/O callback for OCSP lookup */ - CbOCSPRespFree ocspRespFreeCb; /* Frees OCSP Response from IO Cb */ - wolfSSL_Mutex caLock; /* CA list lock */ - byte crlEnabled; /* is CRL on ? */ - byte crlCheckAll; /* always leaf, but all ? */ - byte ocspEnabled; /* is OCSP on ? */ - byte ocspCheckAll; /* always leaf, but all ? */ - byte ocspSendNonce; /* send the OCSP nonce ? */ - byte ocspUseOverrideURL; /* ignore cert's responder, override */ - byte ocspStaplingEnabled; /* is OCSP Stapling on ? */ + CallbackCACache caCacheCallback; /* CA cache addition callback */ + CbMissingCRL cbMissingCRL; /* notify thru cb of missing crl */ + CbOCSPIO ocspIOCb; /* I/O callback for OCSP lookup */ + CbOCSPRespFree ocspRespFreeCb; /* Frees OCSP Response from IO Cb */ + wolfSSL_Mutex caLock; /* CA list lock */ + byte crlEnabled:1; /* is CRL on ? */ + byte crlCheckAll:1; /* always leaf, but all ? */ + byte ocspEnabled:1; /* is OCSP on ? */ + byte ocspCheckAll:1; /* always leaf, but all ? */ + byte ocspSendNonce:1; /* send the OCSP nonce ? */ + byte ocspUseOverrideURL:1; /* ignore cert responder, override */ + byte ocspStaplingEnabled:1; /* is OCSP Stapling on ? */ +#if defined(HAVE_CERTIFICATE_STATUS_REQUEST) \ +|| defined(HAVE_CERTIFICATE_STATUS_REQUEST_V2) + byte ocspMustStaple:1; /* server must respond with staple */ +#endif #ifndef NO_RSA short minRsaKeySz; /* minimum allowed RSA key size */ @@ -2017,6 +2102,13 @@ struct WOLFSSL_CERT_MANAGER { #if defined(HAVE_ECC) || defined(HAVE_ED25519) || defined(HAVE_ED448) short minEccKeySz; /* minimum allowed ECC key size */ #endif +#if defined(OPENSSL_EXTRA) + WOLFSSL_X509_STORE *x509_store_p; /* a pointer back to CTX x509 store */ + /* CTX has ownership and free this */ + /* with CTX free. */ +#endif + wolfSSL_Mutex refMutex; /* reference count mutex */ + int refCount; /* reference count */ }; WOLFSSL_LOCAL int CM_SaveCertCache(WOLFSSL_CERT_MANAGER*, const char*); @@ -2158,14 +2250,16 @@ typedef struct Keys { #ifdef HAVE_TLS_EXTENSIONS typedef enum { +#ifdef HAVE_SNI TLSX_SERVER_NAME = 0x0000, /* a.k.a. SNI */ +#endif TLSX_MAX_FRAGMENT_LENGTH = 0x0001, TLSX_TRUSTED_CA_KEYS = 0x0003, TLSX_TRUNCATED_HMAC = 0x0004, TLSX_STATUS_REQUEST = 0x0005, /* a.k.a. OCSP stapling */ TLSX_SUPPORTED_GROUPS = 0x000a, /* a.k.a. Supported Curves */ TLSX_EC_POINT_FORMATS = 0x000b, -#if !defined(WOLFSSL_NO_SIGALG) +#if !defined(NO_CERTS) && !defined(WOLFSSL_NO_SIGALG) TLSX_SIGNATURE_ALGORITHMS = 0x000d, /* HELLO_EXT_SIG_ALGO */ #endif TLSX_APPLICATION_LAYER_PROTOCOL = 0x0010, /* a.k.a. ALPN */ @@ -2184,14 +2278,18 @@ typedef enum { TLSX_EARLY_DATA = 0x002a, #endif TLSX_SUPPORTED_VERSIONS = 0x002b, + #ifdef WOLFSSL_SEND_HRR_COOKIE TLSX_COOKIE = 0x002c, + #endif #if defined(HAVE_SESSION_TICKET) || !defined(NO_PSK) TLSX_PSK_KEY_EXCHANGE_MODES = 0x002d, #endif #ifdef WOLFSSL_POST_HANDSHAKE_AUTH TLSX_POST_HANDSHAKE_AUTH = 0x0031, #endif + #if !defined(NO_CERTS) && !defined(WOLFSSL_NO_SIGALG) TLSX_SIGNATURE_ALGORITHMS_CERT = 0x0032, + #endif TLSX_KEY_SHARE = 0x0033, #endif TLSX_RENEGOTIATION_INFO = 0xff01 @@ -2226,9 +2324,9 @@ WOLFSSL_LOCAL int TLSX_WriteResponse(WOLFSSL *ssl, byte* output, byte msgType, word16* pOffset); #endif -WOLFSSL_LOCAL int TLSX_ParseVersion(WOLFSSL* ssl, byte* input, word16 length, - byte msgType, int* found); -WOLFSSL_LOCAL int TLSX_Parse(WOLFSSL* ssl, byte* input, word16 length, +WOLFSSL_LOCAL int TLSX_ParseVersion(WOLFSSL* ssl, const byte* input, + word16 length, byte msgType, int* found); +WOLFSSL_LOCAL int TLSX_Parse(WOLFSSL* ssl, const byte* input, word16 length, byte msgType, Suites *suites); #elif defined(HAVE_SNI) \ @@ -2334,7 +2432,7 @@ typedef struct { union { OcspRequest ocsp; } request; -#if defined(WOLFSSL_TLS13) && !defined(NO_WOLFSSL_SERVER) +#if defined(WOLFSSL_TLS13) buffer response; #endif } CertificateStatusRequest; @@ -2451,6 +2549,28 @@ typedef struct SessionTicket { word16 size; } SessionTicket; +#if !defined(WOLFSSL_NO_DEF_TICKET_ENC_CB) && !defined(WOLFSSL_NO_SERVER) + +/* Data passed to default SessionTicket enc/dec callback. */ +typedef struct TicketEncCbCtx { + /* Name for this context. */ + byte name[WOLFSSL_TICKET_NAME_SZ]; + /* Current keys - current and next. */ + byte key[2][WOLFSSL_TICKET_KEY_SZ]; + /* Expirary date of keys. */ + word32 expirary[2]; + /* Random number generator to use for generating name, keys and IV. */ + WC_RNG rng; +#ifndef SINGLE_THREADED + /* Mutex for access to changing keys. */ + wolfSSL_Mutex mutex; +#endif + /* Pointer back to SSL_CTX. */ + WOLFSSL_CTX* ctx; +} TicketEncCbCtx; + +#endif /* !WOLFSSL_NO_DEF_TICKET_ENC_CB && !WOLFSSL_NO_SERVER */ + WOLFSSL_LOCAL int TLSX_UseSessionTicket(TLSX** extensions, SessionTicket* ticket, void* heap); WOLFSSL_LOCAL SessionTicket* TLSX_SessionTicket_Create(word32 lifetime, @@ -2508,7 +2628,7 @@ typedef struct Cookie { byte data; } Cookie; -WOLFSSL_LOCAL int TLSX_Cookie_Use(WOLFSSL* ssl, byte* data, word16 len, +WOLFSSL_LOCAL int TLSX_Cookie_Use(WOLFSSL* ssl, const byte* data, word16 len, byte* mac, byte macSz, int resp); @@ -2519,17 +2639,23 @@ typedef struct KeyShareEntry { word16 group; /* NamedGroup */ byte* ke; /* Key exchange data */ word32 keLen; /* Key exchange data length */ - void* key; /* Private key */ - word32 keyLen; /* Private key length */ + void* key; /* Key struct */ + word32 keyLen; /* Key size (bytes) */ byte* pubKey; /* Public key */ word32 pubKeyLen; /* Public key length */ +#ifndef NO_DH + byte* privKey; /* Private key - DH only */ +#endif +#ifdef WOLFSSL_ASYNC_CRYPT + int lastRet; +#endif struct KeyShareEntry* next; /* List pointer */ } KeyShareEntry; WOLFSSL_LOCAL int TLSX_KeyShare_Use(WOLFSSL* ssl, word16 group, word16 len, byte* data, KeyShareEntry **kse); WOLFSSL_LOCAL int TLSX_KeyShare_Empty(WOLFSSL* ssl); -WOLFSSL_LOCAL int TLSX_KeyShare_Establish(WOLFSSL* ssl); +WOLFSSL_LOCAL int TLSX_KeyShare_Establish(WOLFSSL* ssl, int* doHelloRetry); WOLFSSL_LOCAL int TLSX_KeyShare_DeriveSecret(WOLFSSL* ssl); @@ -2562,7 +2688,7 @@ WOLFSSL_LOCAL int TLSX_PreSharedKey_WriteBinders(PreSharedKey* list, word16* pSz); WOLFSSL_LOCAL int TLSX_PreSharedKey_GetSizeBinders(PreSharedKey* list, byte msgType, word16* pSz); -WOLFSSL_LOCAL int TLSX_PreSharedKey_Use(WOLFSSL* ssl, byte* identity, +WOLFSSL_LOCAL int TLSX_PreSharedKey_Use(WOLFSSL* ssl, const byte* identity, word16 len, word32 age, byte hmac, byte cipherSuite0, byte cipherSuite, byte resumption, @@ -2603,6 +2729,10 @@ WOLFSSL_LOCAL int DeriveMasterSecret(WOLFSSL* ssl); WOLFSSL_LOCAL int DeriveResumptionPSK(WOLFSSL* ssl, byte* nonce, byte nonceLen, byte* secret); WOLFSSL_LOCAL int DeriveResumptionSecret(WOLFSSL* ssl, byte* key); +WOLFSSL_LOCAL int Tls13_Exporter(WOLFSSL* ssl, unsigned char *out, size_t outLen, + const char *label, size_t labelLen, + const unsigned char *context, size_t contextLen); + /* The key update request values for KeyUpdate message. */ enum KeyUpdateRequest { update_not_requested, @@ -2620,9 +2750,21 @@ enum SetCBIO { #endif #ifdef WOLFSSL_STATIC_EPHEMERAL +/* contains static ephemeral keys */ typedef struct { - int keyAlgo; - DerBuffer* key; +#ifndef NO_DH + DerBuffer* dhKey; +#endif +#ifdef HAVE_ECC + DerBuffer* ecKey; +#endif + /* bits */ +#ifndef NO_DH + byte weOwnDH:1; +#endif +#ifdef HAVE_ECC + byte weOwnEC:1; +#endif } StaticKeyExchangeInfo_t; #endif @@ -2644,7 +2786,7 @@ struct WOLFSSL_CTX { DerBuffer* certificate; DerBuffer* certChain; /* chain after self, in DER, with leading size for each cert */ - #if defined(OPENSSL_EXTRA) || defined(WOLFSSL_EXTRA) + #if defined(OPENSSL_EXTRA) || defined(WOLFSSL_EXTRA) || defined(HAVE_LIGHTY) WOLF_STACK_OF(WOLFSSL_X509_NAME)* ca_names; #endif #if defined(OPENSSL_ALL) || defined(OPENSSL_EXTRA) || \ @@ -2656,10 +2798,14 @@ struct WOLFSSL_CTX { int certChainCnt; #endif DerBuffer* privateKey; - byte privateKeyType:7; + byte privateKeyType:6; byte privateKeyId:1; + byte privateKeyLabel:1; int privateKeySz; int privateKeyDevId; +#ifdef OPENSSL_ALL + WOLFSSL_EVP_PKEY* privateKeyPKey; +#endif WOLFSSL_CERT_MANAGER* cm; /* our cert manager, ctx owns SSL will use */ #endif #ifdef KEEP_OUR_CERT @@ -2691,8 +2837,11 @@ struct WOLFSSL_CTX { byte minDowngrade; /* minimum downgrade version */ byte haveEMS:1; /* have extended master secret extension */ byte useClientOrder:1; /* Use client's cipher preference order */ +#if defined(HAVE_SESSION_TICKET) + byte noTicketTls12:1; /* TLS 1.2 server won't send ticket */ +#endif #ifdef WOLFSSL_TLS13 - byte noTicketTls13:1; /* Server won't create new Ticket */ + byte noTicketTls13:1; /* TLS 1.3 Server won't create new Ticket */ byte noPskDheKe:1; /* Don't use (EC)DHE with PSK */ #endif byte mutualAuth:1; /* Mutual authentication required */ @@ -2744,7 +2893,14 @@ struct WOLFSSL_CTX { byte sessionCtxSz; byte cbioFlag; /* WOLFSSL_CBIO_RECV/SEND: CBIORecv/Send is set */ CallbackInfoState* CBIS; /* used to get info about SSL state */ + WOLFSSL_X509_VERIFY_PARAM* param; /* verification parameters*/ #endif +#ifdef WOLFSSL_WOLFSENTRY_HOOKS + NetworkFilterCallback_t AcceptFilter; + void *AcceptFilter_arg; + NetworkFilterCallback_t ConnectFilter; + void *ConnectFilter_arg; +#endif /* WOLFSSL_WOLFSENTRY_HOOKS */ CallbackIORecv CBIORecv; CallbackIOSend CBIOSend; #ifdef WOLFSSL_DTLS @@ -2775,6 +2931,7 @@ struct WOLFSSL_CTX { wc_psk_client_callback client_psk_cb; /* client callback */ wc_psk_server_callback server_psk_cb; /* server callback */ #ifdef WOLFSSL_TLS13 + wc_psk_client_cs_callback client_psk_cs_cb; /* client callback */ wc_psk_client_tls13_callback client_psk_tls13_cb; /* client callback */ wc_psk_server_tls13_callback server_psk_tls13_cb; /* server callback */ #endif @@ -2804,13 +2961,11 @@ struct WOLFSSL_CTX { #ifdef HAVE_EX_DATA WOLFSSL_CRYPTO_EX_DATA ex_data; #endif -#if defined(HAVE_ALPN) && (defined(OPENSSL_ALL) || defined(WOLFSSL_NGINX) || defined(WOLFSSL_HAPROXY)) +#if defined(HAVE_ALPN) && (defined(OPENSSL_ALL) || defined(WOLFSSL_NGINX) || defined(WOLFSSL_HAPROXY) || defined(HAVE_LIGHTY)) CallbackALPNSelect alpnSelect; void* alpnSelectArg; #endif -#if defined(OPENSSL_ALL) || (defined(OPENSSL_EXTRA) && (defined(HAVE_STUNNEL) || \ - defined(WOLFSSL_NGINX) || defined(HAVE_LIGHTY) || \ - defined(WOLFSSL_HAPROXY) || defined(WOLFSSL_OPENSSH) )) +#ifdef HAVE_SNI CallbackSniRecv sniRecvCb; void* sniRecvCbArg; #endif @@ -2838,12 +2993,19 @@ struct WOLFSSL_CTX { #if defined(HAVE_SESSION_TICKET) && !defined(NO_WOLFSSL_SERVER) SessionTicketEncCb ticketEncCb; /* enc/dec session ticket Cb */ void* ticketEncCtx; /* session encrypt context */ + #if defined(OPENSSL_ALL) || defined(WOLFSSL_NGINX) || defined(WOLFSSL_HAPROXY) \ + || defined(OPENSSL_EXTRA) || defined(HAVE_LIGHTY) + ticketCompatCb ticketEncWrapCb; /* callback for OpenSSL ticket key callback */ + #endif int ticketHint; /* ticket hint in seconds */ + #ifndef WOLFSSL_NO_DEF_TICKET_ENC_CB + TicketEncCbCtx ticketKeyCtx; + #endif + #endif #endif #ifdef HAVE_SUPPORTED_CURVES byte userCurves; /* indicates user called wolfSSL_CTX_UseSupportedCurve */ #endif -#endif #ifdef ATOMIC_USER CallbackMacEncrypt MacEncryptCb; /* Atomic User Mac/Encrypt Cb */ CallbackDecryptVerify DecryptVerifyCb; /* Atomic User Decrypt/Verify Cb */ @@ -2858,31 +3020,31 @@ struct WOLFSSL_CTX { CallbackEccSign EccSignCb; /* User EccSign Callback handler */ CallbackEccVerify EccVerifyCb; /* User EccVerify Callback handler */ CallbackEccSharedSecret EccSharedSecretCb; /* User EccVerify Callback handler */ - #ifdef HAVE_ED25519 - /* User Ed25519Sign Callback handler */ - CallbackEd25519Sign Ed25519SignCb; - /* User Ed25519Verify Callback handler */ - CallbackEd25519Verify Ed25519VerifyCb; - #endif - #ifdef HAVE_CURVE25519 - /* User X25519 KeyGen Callback Handler */ - CallbackX25519KeyGen X25519KeyGenCb; - /* User X25519 SharedSecret Callback handler */ - CallbackX25519SharedSecret X25519SharedSecretCb; - #endif - #ifdef HAVE_ED448 - /* User Ed448Sign Callback handler */ - CallbackEd448Sign Ed448SignCb; - /* User Ed448Verify Callback handler */ - CallbackEd448Verify Ed448VerifyCb; - #endif - #ifdef HAVE_CURVE448 - /* User X448 KeyGen Callback Handler */ - CallbackX448KeyGen X448KeyGenCb; - /* User X448 SharedSecret Callback handler */ - CallbackX448SharedSecret X448SharedSecretCb; - #endif #endif /* HAVE_ECC */ + #ifdef HAVE_ED25519 + /* User Ed25519Sign Callback handler */ + CallbackEd25519Sign Ed25519SignCb; + /* User Ed25519Verify Callback handler */ + CallbackEd25519Verify Ed25519VerifyCb; + #endif + #ifdef HAVE_CURVE25519 + /* User X25519 KeyGen Callback Handler */ + CallbackX25519KeyGen X25519KeyGenCb; + /* User X25519 SharedSecret Callback handler */ + CallbackX25519SharedSecret X25519SharedSecretCb; + #endif + #ifdef HAVE_ED448 + /* User Ed448Sign Callback handler */ + CallbackEd448Sign Ed448SignCb; + /* User Ed448Verify Callback handler */ + CallbackEd448Verify Ed448VerifyCb; + #endif + #ifdef HAVE_CURVE448 + /* User X448 KeyGen Callback Handler */ + CallbackX448KeyGen X448KeyGenCb; + /* User X448 SharedSecret Callback handler */ + CallbackX448SharedSecret X448SharedSecretCb; + #endif #ifndef NO_DH CallbackDhAgree DhAgreeCb; /* User DH Agree Callback handler */ #endif @@ -2903,7 +3065,7 @@ struct WOLFSSL_CTX { WOLF_EVENT_QUEUE event_queue; #endif /* HAVE_WOLF_EVENT */ #ifdef HAVE_EXT_CACHE - WOLFSSL_SESSION*(*get_sess_cb)(WOLFSSL*, unsigned char*, int, int*); + WOLFSSL_SESSION*(*get_sess_cb)(WOLFSSL*, const unsigned char*, int, int*); int (*new_sess_cb)(WOLFSSL*, WOLFSSL_SESSION*); void (*rem_sess_cb)(WOLFSSL_CTX*, WOLFSSL_SESSION*); #endif @@ -2911,6 +3073,9 @@ struct WOLFSSL_CTX { Srp* srp; /* TLS Secure Remote Password Protocol*/ byte* srp_password; #endif +#if defined(OPENSSL_EXTRA) && defined(HAVE_SECRET_CALLBACK) + wolfSSL_CTX_keylog_cb_func keyLogCb; +#endif /* OPENSSL_EXTRA && HAVE_SECRET_CALLBACK */ #ifdef WOLFSSL_STATIC_EPHEMERAL StaticKeyExchangeInfo_t staticKE; #endif @@ -2923,6 +3088,10 @@ void FreeSSL_Ctx(WOLFSSL_CTX*); WOLFSSL_LOCAL void SSL_CtxResourceFree(WOLFSSL_CTX*); +#ifdef HAVE_EX_DATA_CLEANUP_HOOKS +void wolfSSL_CRYPTO_cleanup_ex_data(WOLFSSL_CRYPTO_EX_DATA* ex_data); +#endif + WOLFSSL_LOCAL int DeriveTlsKeys(WOLFSSL* ssl); WOLFSSL_LOCAL @@ -3189,6 +3358,9 @@ struct WOLFSSL_SESSION { wolfSSL_Mutex refMutex; /* ref count mutex */ int refCount; /* reference count */ #endif +#if defined(OPENSSL_EXTRA) || defined(OPENSSL_EXTRA_X509_SMALL) + byte peerVerifyRet; /* cert verify error */ +#endif #ifdef WOLFSSL_TLS13 word16 namedGroup; #endif @@ -3214,17 +3386,19 @@ struct WOLFSSL_SESSION { #ifdef HAVE_EX_DATA WOLFSSL_CRYPTO_EX_DATA ex_data; #endif + byte side; /* Either WOLFSSL_CLIENT_END or + WOLFSSL_SERVER_END */ }; -WOLFSSL_LOCAL -WOLFSSL_SESSION* GetSession(WOLFSSL*, byte*, byte); -WOLFSSL_LOCAL -int SetSession(WOLFSSL*, WOLFSSL_SESSION*); +WOLFSSL_LOCAL WOLFSSL_SESSION* GetSession(WOLFSSL*, byte*, byte); +WOLFSSL_LOCAL int SetSession(WOLFSSL*, WOLFSSL_SESSION*); +WOLFSSL_LOCAL void FreeSession(WOLFSSL_SESSION*, int); typedef int (*hmacfp) (WOLFSSL*, byte*, const byte*, word32, int, int, int, int); #ifndef NO_CLIENT_CACHE + WOLFSSL_LOCAL WOLFSSL_SESSION* GetSessionClient(WOLFSSL*, const byte*, int); #endif @@ -3312,8 +3486,9 @@ typedef struct Buffers { #ifndef NO_CERTS DerBuffer* certificate; /* WOLFSSL_CTX owns, unless we own */ DerBuffer* key; /* WOLFSSL_CTX owns, unless we own */ - byte keyType:7; /* Type of key: RSA, ECC, Ed25519 */ + byte keyType:6; /* Type of key: RSA, ECC, Ed25519 */ byte keyId:1; /* Key data is an id not data */ + byte keyLabel:1; /* Key data is a label not data */ int keySz; /* Size of RSA key */ int keyDevId; /* Device Id for key */ DerBuffer* certChain; /* WOLFSSL_CTX owns, unless we own */ @@ -3379,7 +3554,11 @@ typedef struct Options { #ifndef NO_PSK wc_psk_client_callback client_psk_cb; wc_psk_server_callback server_psk_cb; +#ifdef OPENSSL_EXTRA + wc_psk_use_session_cb_func session_psk_cb; +#endif #ifdef WOLFSSL_TLS13 + wc_psk_client_cs_callback client_psk_cs_cb; /* client callback */ wc_psk_client_tls13_callback client_psk_tls13_cb; /* client callback */ wc_psk_server_tls13_callback server_psk_tls13_cb; /* server callback */ #endif @@ -3440,13 +3619,12 @@ typedef struct Options { #ifdef HAVE_POLY1305 word16 oldPoly:1; /* set when to use old rfc way of poly*/ #endif -#ifdef HAVE_ANON word16 haveAnon:1; /* User wants to allow Anon suites */ -#endif #ifdef HAVE_SESSION_TICKET word16 createTicket:1; /* Server to create new Ticket */ word16 useTicket:1; /* Use Ticket not session cache */ word16 rejectTicket:1; /* Callback rejected ticket */ + word16 noTicketTls12:1; /* TLS 1.2 server won't send ticket */ #ifdef WOLFSSL_TLS13 word16 noTicketTls13:1; /* Server won't create new Ticket */ #endif @@ -3558,6 +3736,9 @@ typedef struct Arrays { byte sessionIDSz; #ifdef WOLFSSL_TLS13 byte secret[SECRET_LEN]; +#endif +#ifdef HAVE_KEYING_MATERIAL + byte exporterSecret[WC_MAX_DIGEST_SIZE]; #endif byte masterSecret[SECRET_LEN]; #if defined(WOLFSSL_RENESAS_TSIP_TLS) && \ @@ -3591,12 +3772,17 @@ typedef struct Arrays { #define STACK_TYPE_X509_NAME 9 #define STACK_TYPE_CONF_VALUE 10 #define STACK_TYPE_X509_INFO 11 +#define STACK_TYPE_BY_DIR_entry 12 +#define STACK_TYPE_BY_DIR_hash 13 +#define STACK_TYPE_X509_OBJ 14 struct WOLFSSL_STACK { unsigned long num; /* number of nodes in stack * (safety measure for freeing and shortcut for count) */ #if defined(OPENSSL_ALL) wolf_sk_compare_cb comp; + wolf_sk_hash_cb hash_fn; + unsigned long hash; #endif union { @@ -3608,10 +3794,15 @@ struct WOLFSSL_STACK { WOLFSSL_CIPHER cipher; WOLFSSL_ACCESS_DESCRIPTION* access; WOLFSSL_X509_EXTENSION* ext; +#ifdef OPENSSL_EXTRA WOLFSSL_CONF_VALUE* conf; +#endif void* generic; char* string; WOLFSSL_GENERAL_NAME* gn; + WOLFSSL_BY_DIR_entry* dir_entry; + WOLFSSL_BY_DIR_HASH* dir_hash; + WOLFSSL_X509_OBJECT* x509_obj; } data; void* heap; /* memory heap hint */ WOLFSSL_STACK* next; @@ -3629,7 +3820,7 @@ struct WOLFSSL_X509_NAME { WOLFSSL_X509_NAME_ENTRY entry[MAX_NAME_ENTRIES]; /* all entries i.e. CN */ WOLFSSL_X509* x509; /* x509 that struct belongs to */ #endif /* OPENSSL_EXTRA */ -#if defined(OPENSSL_ALL) || defined(WOLFSSL_NGINX) +#if defined(OPENSSL_ALL) || defined(WOLFSSL_NGINX) || defined(HAVE_LIGHTY) byte raw[ASN_NAME_MAX]; int rawLen; #endif @@ -3662,6 +3853,7 @@ struct WOLFSSL_X509 { #endif /* (WOLFSSL_SEP || WOLFSSL_QT) && (OPENSSL_EXTRA || OPENSSL_EXTRA_X509_SMALL) */ #if defined(WOLFSSL_QT) || defined(OPENSSL_ALL) WOLFSSL_STACK* ext_sk; /* Store X509_EXTENSIONS from wolfSSL_X509_get_ext */ + WOLFSSL_STACK* ext_sk_full; /* Store X509_EXTENSIONS from wolfSSL_X509_get0_extensions */ WOLFSSL_STACK* ext_d2i;/* Store d2i extensions from wolfSSL_X509_get_ext_d2i */ #endif /* WOLFSSL_QT || OPENSSL_ALL */ #if defined(OPENSSL_EXTRA) || defined(WOLFSSL_WPAS_SMALL) @@ -3688,7 +3880,7 @@ struct WOLFSSL_X509 { char certPolicies[MAX_CERTPOL_NB][MAX_CERTPOL_SZ]; int certPoliciesNb; #endif /* WOLFSSL_CERT_EXT */ -#if defined(OPENSSL_EXTRA) || defined(OPENSSL_ALL) +#if defined(OPENSSL_EXTRA_X509_SMALL) || defined(OPENSSL_EXTRA) wolfSSL_Mutex refMutex; /* ref count mutex */ int refCount; /* reference count */ #endif @@ -3731,10 +3923,17 @@ struct WOLFSSL_X509 { byte subjAltNameCrit:1; byte authKeyIdSet:1; byte authKeyIdCrit:1; + byte issuerSet:1; #endif /* OPENSSL_EXTRA || OPENSSL_EXTRA_X509_SMALL */ +#ifdef WOLFSSL_CERT_REQ + byte isCSR:1; +#endif byte serial[EXTERNAL_SERIAL_SIZE]; char subjectCN[ASN_NAME_MAX]; /* common name short cut */ #ifdef WOLFSSL_CERT_REQ +#ifdef OPENSSL_ALL + WOLFSSL_X509_ATTRIBUTE* challengePwAttr; +#endif char challengePw[CTC_NAME_SIZE]; /* for REQ certs */ #endif WOLFSSL_X509_NAME issuer; @@ -3743,7 +3942,11 @@ struct WOLFSSL_X509 { WOLFSSL_X509_ALGOR algor; WOLFSSL_X509_PUBKEY key; #endif - byte issuerSet:1; +#if defined(OPENSSL_ALL) || defined(KEEP_OUR_CERT) || defined(KEEP_PEER_CERT) || \ + defined(SESSION_CERTS) + byte notBeforeData[CTC_DATE_SIZE]; + byte notAfterData[CTC_DATE_SIZE]; +#endif }; @@ -3934,6 +4137,12 @@ struct WOLFSSL { #ifdef OPENSSL_EXTRA byte cbioFlag; /* WOLFSSL_CBIO_RECV/SEND: CBIORecv/Send is set */ #endif +#ifdef WOLFSSL_WOLFSENTRY_HOOKS + NetworkFilterCallback_t AcceptFilter; + void *AcceptFilter_arg; + NetworkFilterCallback_t ConnectFilter; + void *ConnectFilter_arg; +#endif /* WOLFSSL_WOLFSENTRY_HOOKS */ CallbackIORecv CBIORecv; CallbackIOSend CBIOSend; #ifdef WOLFSSL_STATIC_MEMORY @@ -4077,6 +4286,9 @@ struct WOLFSSL { int dtls_timeout_init; /* starting timeout value */ int dtls_timeout_max; /* maximum timeout value */ int dtls_timeout; /* current timeout value, changes */ +#ifndef NO_ASN_TIME + word32 dtls_start_timeout; +#endif /* !NO_ASN_TIME */ word32 dtls_tx_msg_list_sz; word32 dtls_rx_msg_list_sz; DtlsMsg* dtls_tx_msg_list; @@ -4199,27 +4411,27 @@ struct WOLFSSL { #endif #ifdef HAVE_PK_CALLBACKS #ifdef HAVE_ECC - void* EccKeyGenCtx; /* EccKeyGen Callback Context */ - void* EccSignCtx; /* Ecc Sign Callback Context */ - void* EccVerifyCtx; /* Ecc Verify Callback Context */ - void* EccSharedSecretCtx; /* Ecc Pms Callback Context */ - #ifdef HAVE_ED25519 - void* Ed25519SignCtx; /* ED25519 Sign Callback Context */ - void* Ed25519VerifyCtx; /* ED25519 Verify Callback Context */ - #endif - #ifdef HAVE_CURVE25519 - void* X25519KeyGenCtx; /* X25519 KeyGen Callback Context */ - void* X25519SharedSecretCtx; /* X25519 Pms Callback Context */ - #endif - #ifdef HAVE_ED448 - void* Ed448SignCtx; /* ED448 Sign Callback Context */ - void* Ed448VerifyCtx; /* ED448 Verify Callback Context */ - #endif - #ifdef HAVE_CURVE448 - void* X448KeyGenCtx; /* X448 KeyGen Callback Context */ - void* X448SharedSecretCtx; /* X448 Pms Callback Context */ - #endif + void* EccKeyGenCtx; /* EccKeyGen Callback Context */ + void* EccSignCtx; /* Ecc Sign Callback Context */ + void* EccVerifyCtx; /* Ecc Verify Callback Context */ + void* EccSharedSecretCtx; /* Ecc Pms Callback Context */ #endif /* HAVE_ECC */ + #ifdef HAVE_ED25519 + void* Ed25519SignCtx; /* ED25519 Sign Callback Context */ + void* Ed25519VerifyCtx; /* ED25519 Verify Callback Context */ + #endif + #ifdef HAVE_CURVE25519 + void* X25519KeyGenCtx; /* X25519 KeyGen Callback Context */ + void* X25519SharedSecretCtx; /* X25519 Pms Callback Context */ + #endif + #ifdef HAVE_ED448 + void* Ed448SignCtx; /* ED448 Sign Callback Context */ + void* Ed448VerifyCtx; /* ED448 Verify Callback Context */ + #endif + #ifdef HAVE_CURVE448 + void* X448KeyGenCtx; /* X448 KeyGen Callback Context */ + void* X448SharedSecretCtx; /* X448 Pms Callback Context */ + #endif #ifndef NO_DH void* DhAgreeCtx; /* DH Pms Callback Context */ #endif /* !NO_DH */ @@ -4241,6 +4453,12 @@ struct WOLFSSL { Tls13SecretCb tls13SecretCb; void* tls13SecretCtx; #endif + #ifdef OPENSSL_EXTRA + SessionSecretCb keyLogCb; + #ifdef WOLFSSL_TLS13 + Tls13SecretCb tls13KeyLogCb; + #endif + #endif #endif /* HAVE_SECRET_CALLBACK */ #ifdef WOLFSSL_JNI void* jObjectRef; /* reference to WolfSSLSession in JNI wrapper */ @@ -4248,17 +4466,27 @@ struct WOLFSSL { #ifdef WOLFSSL_EARLY_DATA EarlyDataState earlyData; word32 earlyDataSz; + byte earlyDataStatus; #endif #ifdef OPENSSL_ALL long verifyCallbackResult; #endif -#if defined(OPENSSL_ALL) || defined(WOLFSSL_QT) +#if defined(OPENSSL_EXTRA) WOLFSSL_STACK* supportedCiphers; /* Used in wolfSSL_get_ciphers_compat */ WOLFSSL_STACK* peerCertChain; /* Used in wolfSSL_get_peer_cert_chain */ #endif #ifdef WOLFSSL_STATIC_EPHEMERAL StaticKeyExchangeInfo_t staticKE; #endif +#if defined(OPENSSL_ALL) || defined(WOLFSSL_HAPROXY) + /* Added in libest port: allow applications to get the 'tls-unique' Channel + * Binding Type (https://tools.ietf.org/html/rfc5929#section-3). This is + * used in the EST protocol to bind an enrollment to a TLS session through + * 'proof-of-possession' (https://tools.ietf.org/html/rfc7030#section-3.4 + * and https://tools.ietf.org/html/rfc7030#section-3.5). */ + byte clientFinished[TLS_FINISHED_SZ]; + byte serverFinished[TLS_FINISHED_SZ]; +#endif }; @@ -4418,6 +4646,7 @@ WOLFSSL_LOCAL int StoreKeys(WOLFSSL* ssl, const byte* keyData, int side); WOLFSSL_LOCAL int IsTLS(const WOLFSSL* ssl); WOLFSSL_LOCAL int IsAtLeastTLSv1_2(const WOLFSSL* ssl); WOLFSSL_LOCAL int IsAtLeastTLSv1_3(const ProtocolVersion pv); +WOLFSSL_LOCAL int TLSv1_3_Capable(WOLFSSL* ssl); WOLFSSL_LOCAL void FreeHandshakeResources(WOLFSSL* ssl); WOLFSSL_LOCAL void ShrinkInputBuffer(WOLFSSL* ssl, int forcedFree); @@ -4559,11 +4788,14 @@ WOLFSSL_LOCAL int GrowInputBuffer(WOLFSSL* ssl, int size, int usedLength); WOLFSSL_LOCAL int DtlsUseSCRKeys(WOLFSSL* ssl); WOLFSSL_LOCAL int DtlsCheckOrder(WOLFSSL* ssl, int order); #endif + WOLFSSL_LOCAL int IsSCR(WOLFSSL* ssl); WOLFSSL_LOCAL void WriteSEQ(WOLFSSL* ssl, int verifyOrder, byte* out); #if defined(WOLFSSL_TLS13) && (defined(HAVE_SESSION_TICKET) || !defined(NO_PSK)) WOLFSSL_LOCAL word32 TimeNowInMilliseconds(void); + + WOLFSSL_LOCAL int FindSuiteMac(WOLFSSL* ssl, byte* suite); #endif WOLFSSL_LOCAL word32 LowResTimer(void); @@ -4592,10 +4824,12 @@ typedef struct CipherSuiteInfo { #endif byte cipherSuite0; byte cipherSuite; -#if defined(OPENSSL_ALL) || defined(WOLFSSL_QT) +#if defined(OPENSSL_ALL) || defined(WOLFSSL_QT) || \ + defined(WOLFSSL_HAPROXY) || defined(WOLFSSL_NGINX) byte minor; byte major; #endif + byte flags; } CipherSuiteInfo; WOLFSSL_LOCAL const CipherSuiteInfo* GetCipherNames(void); @@ -4617,7 +4851,8 @@ WOLFSSL_LOCAL const char* GetCipherNameIana(const byte cipherSuite0, const byte WOLFSSL_LOCAL const char* wolfSSL_get_cipher_name_internal(WOLFSSL* ssl); WOLFSSL_LOCAL const char* wolfSSL_get_cipher_name_iana(WOLFSSL* ssl); WOLFSSL_LOCAL int GetCipherSuiteFromName(const char* name, byte* cipherSuite0, - byte* cipherSuite); + byte* cipherSuite, int* flags); + enum encrypt_side { ENCRYPT_SIDE_ONLY = 1, @@ -4634,17 +4869,27 @@ WOLFSSL_LOCAL int SetDsaExternal(WOLFSSL_DSA* dsa); WOLFSSL_LOCAL int SetRsaExternal(WOLFSSL_RSA* rsa); WOLFSSL_LOCAL int SetRsaInternal(WOLFSSL_RSA* rsa); #endif + +typedef enum elem_set { + ELEMENT_P = 0x01, + ELEMENT_Q = 0x02, + ELEMENT_G = 0x04, + ELEMENT_PUB = 0x08, + ELEMENT_PRV = 0x10, +} Element_Set; +WOLFSSL_LOCAL int SetDhExternal_ex(WOLFSSL_DH *dh, int elm ); WOLFSSL_LOCAL int SetDhInternal(WOLFSSL_DH* dh); WOLFSSL_LOCAL int SetDhExternal(WOLFSSL_DH *dh); -#ifndef NO_DH +#if !defined(NO_DH) && (!defined(NO_CERTS) || !defined(NO_PSK)) WOLFSSL_LOCAL int DhGenKeyPair(WOLFSSL* ssl, DhKey* dhKey, byte* priv, word32* privSz, byte* pub, word32* pubSz); WOLFSSL_LOCAL int DhAgree(WOLFSSL* ssl, DhKey* dhKey, const byte* priv, word32 privSz, const byte* otherPub, word32 otherPubSz, - byte* agree, word32* agreeSz); + byte* agree, word32* agreeSz, + const byte* prime, word32 primeSz); #endif /* !NO_DH */ #ifdef HAVE_ECC @@ -4677,6 +4922,43 @@ WOLFSSL_LOCAL void FreeKey(WOLFSSL* ssl, int type, void** pKey); WOLFSSL_LOCAL int wolfSSL_AsyncPush(WOLFSSL* ssl, WC_ASYNC_DEV* asyncDev); #endif +#if defined(OPENSSL_ALL) && defined(WOLFSSL_CERT_GEN) && \ + (defined(WOLFSSL_CERT_REQ) || defined(WOLFSSL_CERT_EXT)) && \ + !defined(NO_FILESYSTEM) && !defined(NO_WOLFSSL_DIR) +WOLFSSL_LOCAL int LoadCertByIssuer(WOLFSSL_X509_STORE* store, + X509_NAME* issuer, int Type); +#endif +#if defined(OPENSSL_ALL) && !defined(NO_FILESYSTEM) && !defined(NO_WOLFSSL_DIR) +WOLFSSL_LOCAL WOLFSSL_BY_DIR_HASH* wolfSSL_BY_DIR_HASH_new(void); +WOLFSSL_LOCAL void wolfSSL_BY_DIR_HASH_free(WOLFSSL_BY_DIR_HASH* dir_hash); +WOLFSSL_LOCAL WOLFSSL_STACK* wolfSSL_sk_BY_DIR_HASH_new_null(void); +WOLFSSL_LOCAL int wolfSSL_sk_BY_DIR_HASH_find( + WOLF_STACK_OF(WOLFSSL_BY_DIR_HASH)* sk, const WOLFSSL_BY_DIR_HASH* toFind); +WOLFSSL_LOCAL int wolfSSL_sk_BY_DIR_HASH_num(const WOLF_STACK_OF(WOLFSSL_BY_DIR_HASH) *sk); +WOLFSSL_LOCAL WOLFSSL_BY_DIR_HASH* wolfSSL_sk_BY_DIR_HASH_value( + const WOLF_STACK_OF(WOLFSSL_BY_DIR_HASH) *sk, int i); +WOLFSSL_LOCAL WOLFSSL_BY_DIR_HASH* wolfSSL_sk_BY_DIR_HASH_pop( + WOLF_STACK_OF(WOLFSSL_BY_DIR_HASH)* sk); +WOLFSSL_LOCAL void wolfSSL_sk_BY_DIR_HASH_pop_free(WOLF_STACK_OF(WOLFSSL_BY_DIR_HASH)* sk, + void (*f) (WOLFSSL_BY_DIR_HASH*)); +WOLFSSL_LOCAL void wolfSSL_sk_BY_DIR_HASH_free(WOLF_STACK_OF(WOLFSSL_BY_DIR_HASH) *sk); +WOLFSSL_LOCAL int wolfSSL_sk_BY_DIR_HASH_push(WOLF_STACK_OF(WOLFSSL_BY_DIR_HASH)* sk, + WOLFSSL_BY_DIR_HASH* in); +/* WOLFSSL_BY_DIR_entry stuff */ +WOLFSSL_LOCAL WOLFSSL_BY_DIR_entry* wolfSSL_BY_DIR_entry_new(void); +WOLFSSL_LOCAL void wolfSSL_BY_DIR_entry_free(WOLFSSL_BY_DIR_entry* entry); +WOLFSSL_LOCAL WOLFSSL_STACK* wolfSSL_sk_BY_DIR_entry_new_null(void); +WOLFSSL_LOCAL int wolfSSL_sk_BY_DIR_entry_num(const WOLF_STACK_OF(WOLFSSL_BY_DIR_entry) *sk); +WOLFSSL_LOCAL WOLFSSL_BY_DIR_entry* wolfSSL_sk_BY_DIR_entry_value( + const WOLF_STACK_OF(WOLFSSL_BY_DIR_entry) *sk, int i); +WOLFSSL_LOCAL WOLFSSL_BY_DIR_entry* wolfSSL_sk_BY_DIR_entry_pop( + WOLF_STACK_OF(WOLFSSL_BY_DIR_entry)* sk); +WOLFSSL_LOCAL void wolfSSL_sk_BY_DIR_entry_pop_free(WOLF_STACK_OF(wolfSSL_BY_DIR_entry)* sk, + void (*f) (WOLFSSL_BY_DIR_entry*)); +WOLFSSL_LOCAL void wolfSSL_sk_BY_DIR_entry_free(WOLF_STACK_OF(wolfSSL_BY_DIR_entry) *sk); +WOLFSSL_LOCAL int wolfSSL_sk_BY_DIR_entry_push(WOLF_STACK_OF(wolfSSL_BY_DIR_entry)* sk, + WOLFSSL_BY_DIR_entry* in); +#endif /* OPENSSL_ALL && !NO_FILESYSTEM && !NO_WOLFSSL_DIR */ #ifdef __cplusplus } /* extern "C" */ diff --git a/source/libwolfssl/libwolfssl.a b/source/libwolfssl/libwolfssl.a index e98409f4e7ad7f9b22c80aa94aba58e1c942dd76..2aac649d25b36cbf9a5849fae5fe75de0d9acc31 100644 GIT binary patch delta 195656 zcmdRX4|r6?)%VQZ&9cA(3v3`jAPWRY2qqCCYzV?GL<|X9lwF~UB#{JzAf^y>)!p1( z5;0Ng8@S+w8bVOCw51dqEEGeCN+~L@uT^YO5rd*2Ql&^O@+bTK&fI&mA=0(}~8|C;{t=yBu5j!nkw3RE_W%4Vx2yE{QO5oaU!Lhw`EK8(e`K7#4^900-^aT%{`bCXpJ2ShSLU^;>|g%wUd{OT`^w)J z!1pXKfA1cAzXr(P4}Jf1<&yj|6W^*PCgCg7&$qrm$z@Xe?@vcF>F<4Cc!Np*`d9uw zh5rp@OZ|585rJGb=zP6OosXz%S9|Nm?Q z{=XjoU7(5Y`IWyffbUrz^oc z74`#sbi=rw4_mrVDJh<}aPoq(nPp2BEWTTLzHfSO?|t4Sg+&X>7TmYEaM85Iixw;{ zR{t_PW`J_OZ|{a7aUO2*%)EKp;i+?_vp!D5zO zJnz1ujmUt@sgPf9x7Je7?76wz`Xn$ z=FLN-_r4i!D$;%<1`e7nkMVU%X_& z{0BQEO!3bC-xKE%E##MKgOk6o_(4U!zTeJKx5vcthOF_wh*6p*b?vcq*@Cj-{P|1n zyElI^21G3^jB%*0yJE&EN$wl$Mk6Lq`$2xuvU^J#7P%jgRPX7SVGVIpCP|K4iaPr=$4p=AxSpXADOYd8}v{<=!>NckVk-Ak}xMUG}RajPt z@h>b}wv?r%DT8lJX_$87jV7yRaTuGfq~G7ibY1!w<@wxE{ETum_YXIg5AfG;<_PRf z@q6l6d|D;5z)f@&L}n_j+@4v;>^Y1vSAC>aK7P>;KhKLqPId?%RzA&J%Bz*zr>~YS z|5f>7`sdu)@ZL@NQqNGpDm}M%FfR%`NHy_FC3nUcIbHtXD*-F(7*BWAbEhkWI<&gD z{M_e$`IC!&Iq`MB5f>;Q@Syu?HcGzXZNFUf{+02|nM1DpxP4rkKeLdBod8wtQQ z^2Y)pta>m?KY2?+KSC7`$kfzGbNM6B_+4Ri58YDUxTWtk?Ne)9^^7BRMq3B9QqdB< zZXMAtU9LUrAedA``BTsMGm{x#4}Zh0xAx|IcEkLcSzHR4)VX)_KFV*sPE(C(veNwf z0cy*1i@D*Vw?8r|eQq1!2{8R**W4cis1@F=z2JfS6r3ISCh6fVdUmGg|BZ6beih;OTc38=UKWt(^ zEr1%8NzLv2hqO$T$AoVmy#iAlW8DmYNwje$R1jyxmoe7Q@T0P}c+_RYn-fugUp>RD9j(B!G78gz%G&a8XKb*M|1j!WWCYGc zE9+!!=XbXAqc=t)Iu%4Q)Cnjxde#XY7^K7ObdE8n;lIS#P=#-HsCT|4DtXHZMU=59a1Nh__E>>|CascgV%;?b45g(Kbk*?IeAI zp|CRt(B$8tr+R$|b3(d%Ia?>kymEyY)#F2kT+;F?(~Ac3bmg9+0m?%w|;o^gCiCXT9*WvPPp`; zy!GGCtJIg=$+tJOmb}6N^yPa}c%$;gJ!#yb3|g2bS5ZNoc@Gp|@Pj#z4^IKXo`=Us z2Xaj%2piIZ8X!J;er%|K;W5ds!@I3R`duBurI^WA0Dv^PBK){=YGJ}H&vuB#EVX2y zd0X^qe%m3vxkLC3$S4x6yY&3;HaxT_nJe4wO;Fyy_m|3}i-*gbqkM;NiOL*~-jfWW zkA!cm;hz&_c#=QL`lanru^}CZ!X$>%2IpkEvgb5rEM%0)85NW!SF{nP>CuW!v!j)n zilUs{1WskhH`DQU^2Z!yqGpWJK)nNIY+^);fpH$fbb z5|RV{^SU1ec%tq{9G{{2Y5MRrnxCc$M=z)>(X*uI?{vhFD%`5RB*zSudK^)1h8#Jd zOO*pcsvHnfMY5h&zF0DX)Bx5@vc%Fg8=$tU{U4WxSh}4<6(@v5>2*$dV(FCA4z~*KNw_QFo`zck_YB-MaL>VA2lqVOTDX@|HbBfb zSy&P(3MupbWA1F%naFG`ye7DR&A@|M$Y=_h=BIei6Oq#$xxH94Esr>n{-*p07Dyq(M;nNDVEI>ycsJgkZ00~;Za_oVpO4`xSJdDvm)>_bC&Na^$N zh#!RVA{VEnVa1TuLe13>D9|LF6^NpEtP~NqtF2)VN0kEVkh`h%G}RaONNksKTi^#b?8@2`X`!Lb^st>6A{yF8 zxHPoQaA|1w!KI-+0GEdLAY2;SH{sII9#T#Prtn=2slg2~GEf0!rPi~YyGaWoWro(; zSaUnl9zhr=2TJX(0`$6&t)re@4+^9_@*{4yXHVpGbpo>?oS9Zd=#Lx;$;_G;`P4`zlk9 z4fq}d`aJq2cg}&nvF-|eV={D;ye^t@(v>v~t9F{Y&C#T;v;?AYjdJVC zUn;pjwkchIJc(yEHGsHyyV7Ot2!2T!jo(Ge?f6YpmaiS& zNjD2AzgpYR;HN#z4PUQKjFCZ~c0r#Tzy@F&!idBXeG=9|E~kk;G3>`NTM7^tNU3I% zJj4m-vZ7$jtq%Dyw|mtfRs`;7M_fr}E@m*?v}&-8a_00jvDrhbnOm+s??xW0ds=ObbHpbF$m=Vt^b zz=sZik;O8K61ADZiV;S|Jk*P+Z(f#Sm1~}MTx&%Jo1Q_1O~8S$Sr0=Ywt}=-wjORk zc#g8<>D$ykQ+ZF*xO~4_b1J5f@@@~C()#qnGDzRBJH$X$GW;}?+WgL_=4xqaw<1Tq zhKaz6ej2NDD|%=soYw3p94k6vXu8%~&DtYotaYo>`b^plD|LN``d_d6QG^}T{8s9A zi|(f`pVR&5E=QPjC3KZ0?-QFJ;Jd`+?N+Ode0Bsst*b|;)h94bd%-luIKFKkr#i@F z=_7Sv+BEKxi1Z9?8h6iD`ad^9Eb~j%+Y2zUZ3mQlo*TipE32PtQ<^fA=I8pFuS-wQ zQ2%EdPnKNA8!SJ)&dhzvgkN0K?+ndpPo4QB&1JYPv;v2FSXusyW70FfP>Q#Xh10NM zYZs~8*iPlCeIOlHGy6|IRCa8eJl+*x*1){?9CBTp+g;1WVlk^eQV}R4{piwx@^vs# zIM|yLEDG&*!5(8u6h`YTX30KM=cW}oE}kbd%l79Q@Z^6R_W{C zHO&3>PR_eE^x5I$a!Lg=dmxib<}piP9?S5~d$;`N5X4#m>rd{Q!I3Iqlo-tBkj8;2 zA3&=hw<9w#y~WfPIBtrZ34EO8C)N-gIK>~h0ROvVgsCG3V=Gsjhxm;gOxqBN5D!G1 zapfCNjv_{D@$87~@-#+v$c>--gA*<|C{C_EKn3arn#o9B^uF@^3;kvj%E{glSkPba zP1j3cswcpAev2X7H^xuu6jdmA<qqOl_Pk$-u!b9S5TVku1W&bXa%%WTYYX7MzH0KlJ%M^!G(r zf1vA76T*|&noKw2HPE}|lNbG~21C7aMj~)&q#4{e=quzpG(fY11t0<_eA9AJEau)#b<9~)4Rx!4F`^@N@35HR4F&su$hlY9{rg7; zgJtpKC`cct_+<<;i5B_db54CC*V0EVy_?(BOBpfNky5&zV$)qfkg|0@xRLm{5jR_T z`oI*Z5}zKJ#E&S$Urm5UFcrV?%6$AzP*%K}kZgz)(wdU8p(xGh&OE|~BU)h!=LH$h`pqz7!7toXxNq1*RuF@<(}6P zVi$EtNB7MkrS7$HV5NV2Z4y7P-1a&whRWF22T3t55tyyqk0`%-VHF=h%gmT{%5PpD z$KO=GcsrGv&o#hF6$~cCf9FDf+t<)~a3&4It#7389Hsn? z1i1i7&R!B_;V(m#3n6??lV`Lj);{PgKKx_IkurF6dB`sy975Qk{peaMO5G0uv23BM(N{{fgWe^?-hAi!)r-MK0Vc|%3w}mx;Kk5(;bO=KdXdfNk zlPuxNh+lTdutR;~C#D3PF1#|^>m9;xbqKe>CQl<`=-d|(_9I-NA;#1X;ll`f^>8Xo zQKO>yO;ZuBiiTy=ors_*vqmql1m-6KsP7+{(6P8syD&7BI0B&W7nz<%_%y=$$Pwkn zokw`P4$qj5y2a6S7N)B$NY^?bGqVNMV~zqaV}q+dQN<1ofcYBu#YZC*a~8HzrXwOp zPsd2cgEWjDo982ZvR(QztPs-Mr9X;rCBi~o18U4qB4RrtnstB}sX?WnNs$5RdtgYb zMY^+L$shLcD^5H#c;8;b`DkTa&!x(Z@0@B#|KoKM?S{4KM@|e!7nH@vIw5NQvd(T7 zAHWFcdAh_!?QUHTMOR8)fKdZxSL87^pSl7O#%^0zV3qu&6|t_D091Xco2j?lEk0Vd z+l*-bZh&c&?GBi2{`#olu=~Df8+ss*(U%_S?ff~>_V*}=n(}&}Us$Gr0P*Qj6;(3r zPR3I74%;VSAPhemca8FgcOA07T?X{Z*vzu;ikdp@&F%bew(}p3`g__KOVxq*Oo~?2 zb2ejXMtlhtjfNj&aV`9UbM&ldY_yTk$k-UekIIbJ_iTy!K|F2wd&NZ?(F+wD+km~Y zqi}jHf>6+5_Nrnm+3=IC_Btbg%8W+zI?dQvJ-#=3W;CdGI%DIE_!*GphQAa#h~Y=i z#_N8EH%bqVvgkNEYGL&hdC-5y0jxCj0;Rv@%_>J9K#Qk8n%W0sH`o1 zbF^&#UC{;&Ktl~w4_FiJGBAR6%l-9N}2rRYJe3XX-q68?ykEToY zn!h*sTQon(1}wcr9+C?tr|v%tzgzQ@JTMi2%n1+)15-#(01iyMG(X7z(?Q*jbW@A& zM}G8NR6u;+?9lz^;Rp2*OycimP#^h;wVNw-za9QY-M^3JGqc`f;^#4FITavY9y3Ar zpM-yo<|iH=6VUwt7*nhJx5Ix(^Ap>)I5mGlt!`t#Pwn}k*`Zv&q=zLP^;rB$>zpA{ z!WnHXnQ#WC_Tdzy9bAhO-LZ^P>h2t38M_Zda)=D>-G{qT2fl*0c2}B~^|z#i(3jVQ z-QBfL8Pd|WgdC@aN_m_q!=)`D<-)BfC-gu3CNUf93eEpa7=yGIi;U1K%p6W+Ec7w6 z1+BS$_|4%dSaj?ceru?b*}ToZ-PpqPU+;uQe0&HUV`1LMV|V*H`F3Y6w6VZvuGHXy z*{SlYEY;`s?GBu{-5;LE?19cKH6SD4eSIx5npwDlouQ1rmFLSTlP~Wb#9LX)N)|)$ zBCcz!04e|;6@VNvTwk6B!F4DbGTcFXc-vs1l~ zuifpf^od3Us-39;cEMlqG1e*jt=QeZ)gP*0@f1gSgSkWeKJ(h$u1YiWb$w@du(LCj z8W~NW><@NMPxXF^o+e!I2XiO;1J&uNzMR!en0Rs~5DRcs`W~$0x7d zofSbttdc)uVj1KH&>&y_JBSCi^sx8CScGki#+u@M1sE18zc6;U{Mq?bnJ83@vo_`~ zL1^&%^0f*G8}|Pc#5Zosmq7qEiSPGs*~iyUJ)KDh)0a6rV%x)p}0x-iU@;q62Ca(SaCS zN<$|^!#f)^A%2H|>t59&7v3}N5h zp!^e{d=e&<{%9=1S~>ZsC|5?V?{2LejVCg#sh*2G#)@OXzU3N(buef;Qs{G*aw@26Th?+IW4X#z_ia=|aAMqyBR z)_z$7B7X)ZGF2-`7$7Qz1gs)gq=E7Htdwp@y7W{MQh`??Bc{0oH}l;cyW6`FmF~aQ z4;^78RV)Y@;ovj~GYki%&3X;YD%UC)TTmvpib&r*zTMsfAP9sF0ig?)8jWDU$#khG z!aB#(2uvd=@_Q@M!%E`+f+p6`loa&R35{<@Pu|}nALvPLBPeJqqJ<|!&({UudOy@; zfERMRjSVB-Cu^M0w@~ARq`U~0N@d#3hQNM7L$&16bPVht;&*Q_+r0ar9p(AZQ1E|I z5Uunj_;y3nu>=!bB8d@5AAsqqhTSG0AI)v#!V@Cu;6;kE;*l(wby&Gv7U8xyqG@(g7 zg9c_DKt90H$9{*#C#W;Jpb~uL9Wn04u*xJWxFwL_WknYac2HankTn*i$FT=61wz1ub}6i4O=M&Hpql zd`9zK5b{294Z5H)7lcf4f+l2b9tJjos@v$`j8L(>N72ip=Js@OK#VPoW9KuezPZ2z z#y{&QdZfn@9cWWni_JvzyS>)PMenKF~%8maO4U)h)!c!Wbmy_%AmO{e|(oCP(8#^Wj339 zU46Sl8?n8H#Rc&QqK5zj4*(Gn0r?iP?gI7m3c&TunEz-rr5|5QjD^iQ%DPiNZ>2OS zPUd|F`8@*XiW?=6EKSN?$ZE8fqdnsUW&Bi8X)if*xgl? zW>etR(GF^i_XOa8xO@pf?PpN2ATx-aQ{!eu%$f|KbVJh4f^Oa>3^3Nz>Z<)_)2xUz zD3}bn=yI3kHT0?40MPifAEP^E+%O72`zlBh2<97Ok$qxRX(L z{2TdaWBi#G#sk%P{!BM**I>)4v+21XCBxS6G|TqxKhu;sm2o<)I~fMhn?uYQ%+5&- z#^4Kj3r?Aqip8uMJ5R@hi8HnZWAIHz{Lovr(UFJAEOMI41gcZ~nK7sb@TnexPxUC< zKDoU=#||tT6~baYbR27EGqYk1ZL4{WGiAu9d7TcYJi^X+HZ&~yG|7_6nY`hQTb^*% z5qRpX1LtK9;Shse+pju*OdN8+VFT^#)X7(smrtk2hxI)=8y&@|;cS#=xn1l<1#q^5 z_NGvKyf}N*DDD8+#i{J*8Kk5fEc;7eWj(y_9h*q`ak=I6tlOPqC$+!=ll_(h$D>%* zL~7ZaZnWrNcn&jXm2-PIp4q|^V2TSJVb)a>xxMCnxC5AN)g9<&IWvb^v89`b^~hXi z4JJbxm$Ng({t>qMMnL||J6|5`g4tgJQi_as1QRAZLXX;$NGl6lZbRs^!e&0Q4c>b*p zswkWrmlS#qnD{hSOX~u+Ee#k+K^^(dol2Fw&krsFB~DMzXI?BT$C^ zF_B!AMsjGZzbB1M56a(#NOT&ZX`|D}jH}THF`FxR2w}+JBj2VIuQvYQfl!DR1W{du zsTi~YI+^`1(1_fTNakFHNWLqL6#VlvA`=C-F_NOI6Unz}MCAL_CmKfPB!h?O{G;UW z(FVm|!8>G~c@T;X1|oR6#zYp;_z@%VWz&?oIx`W%25^Yahl}h>Xx-_Oo+n1q<8c%8b=1!185w|k+2C{ zHDM#zuvKtEe-N%Od+ly&4DpUoCAg`^J7f?RG_}n@F%pS^get-3!9a+4h=PegGt$C| z7$%L81jzNppi*Kc7zRxMq1Og4Sph7}_wA1I5;O`h1C>J7gviz8j2M4nt;CJcE3H*} zI97y71tdV!LtXw?3MmL(z4bcQ$l@Mb0=;h=N9E=t?f~A62 zi;N?ES_LDB+mUhsY#@#HD{%O9C5^f8CqWcfAur;63*OmH;#&-5ava86%j11DR>b@A zPzOXi%@&z>z1SF;$ZE*-OT`MC|8yiwYg2_VQtRt5;Rj7qzyCU%`#+Ks$j_9Q_WVeRs ztrhYf{$MTy4s-$7ET$8^kU}EpfaJ>~ppjuPACV?v5FDXK*rJZYeu2uNt64O=(^^4X zge}4G$abwO7*rYMF_a3y3-$|%w>bdU7lX2bpwS5m-|&v6X#q1KnN%$UHIz8arzIw@ zg&Kx&6KWU=J}WS@gw5PpcPpV#MOwU1EI9hiB2QC z1l#^QbYjrb-=h^lAA(+FK`@O(I0mu6sF8SeV)?tY(o9(Sm*_;+2xZ?tB$R)SP7Zum zI??$5w+ZE7M?w+&{kzl2o8OU6i2oBq0D-kFI0REU)PYd`RXRERztf4VF`a)*D1uIo zw5JpAJlH&jTP6m}`-@di)pO3ItXgIdy^gixNZTeTcJYFlC>0>O=xc<6CV-3rVZZn>vxk&zHMmV)a6#fk9R0 zI+J|X=I*|Q&E0EoB|_v&S)t`i-mm4u5LPE6Uv6lSZ((SVj3+XL#`F39iQW^y6wMOw z6oOfG0{N2NKZF?wEjrO(WDJ~~?63I%79A|BafTL_*Ia+r9%f&4edJ7DW5gmXVOiaGZV-L0N1Mg`Y$88%%O`ySa|Y_n-ZZ^vQ3P)UWEKPx>iue3dI5|8J%L zxqGDJh02O^x5>vl;|%vAoH1~d<)W#Ot)#Qyuw3kOG1Rl1XQbf>ho_E@3VfdBcb$ry zOL-KhwKwqilqzP+I>ypwMX=p_$4nfWhB>E`eggS7IDx!wsNegiV-vk^cbb^>A#=N% z*tu{XdYgjY;)cbl1Y9tY=fa}qMqnbdW;z*vKA%lrpU-Z_#iJjDBFuf;-<)H^2`oFy ziHlWNVs2ht*lSc4OtEZ-k)+ z2a0J3@*;<>FQ5OEpWX|hn<6ruhtG?A{AwD`hrl+I9oobW$_w82hr;ZDT!pjGH{uNx z%PXQVY%`pIxi&JV2JG#>h||ghsDf@=w({-uu4ZO8TB$d37z)Kn3wLwkMO&@RHzF2>N_H-0a30@KGs za+tLU6#f1yfBBYQ_~{6G+btnFaZd-tacd|q@>aDlz5&%5Ha-exH3QX7n8m71&jn}a zYzxNbY@^GI#Or;zmWlGwnSR&=PwE#)_uckK=h!TufBZ(=M0&EtUB3Gx$2_^;M?^Gb zX*j3~qH)8%=GMlx<#%F8q7CR={t50+Y(^u+iS>^-g#{7eRs_)o#{IDI{*CC=7R>qi zcPQ7McU*5Kpu|t}A}x1{acu+qhfQLvpZ$fOE@^02ERJ1+v7UjUnGUyBZTho0QR(wd zpJd#8zy&c;8G62IB6lwQjM)a`hz}kRg2Fismm);G+B3~GP+9WLTnU!Vx4s$E(u!0D|Z4HoUU{Mv=ijBIjaelYU+y2Bs59n>`d zT;me%YJj>{4aOrn?_H!L=NB%HnHDFy>gKo5KxYEF_LKvQgMw!~;$WlafvD#7IBN%V z9Y@W6sui`Z3=|A_aIc4#D)(PPjRCXCAH1_&jkqnL)p%)4@^`JPN*Q}ODT!DykTRW) zXVILa3WFo@#t|&u!Om0ss|uMduqDN>Jajq9LH#Gww07|Wm)0scUhKI1r@@)=Xm=dG z_;lZjivae?^rVBy^wSTIcBe?3fnzT6;DaM=;)4TVY`S_hfsaTo)1yjsm$Fys{vzF_ zDr(jKPM*-UQHzQ>&T`dkCr_8ydG&rLAJZ)Z zdDrCC3;I%Nx~baNxE#u@NUAZZ8;9`W-3{EfAg;=!zCDBw$uN3Jh@%hOw#yi^*_7_~ z>A0*hC3;x{NH?kBkukjonYL>sm|1rzNpBG=Q2z3xzUnWt`HhpiZ$MgFLelSjV5Ier)*;>p$B~h)cNmXj0~y*!&oCAl&LE~yYY@MoL;CGF3XT(++^wfC z?vNh9P@YD*ejS3NvTM&FPm7*^b^H7|$XJgP+lLStuV>hXFg0Md9tJwcAYWVh?-4FS z*sQ0&g>Z>Fb~wM@bl+Zc6cE%FpA(J0 zrX=c5jf=ubO^luaPj$D;v#(tqv>(r*2>h_L>?k7AN~4)bmowgBp##gty^nOX-+0_5 zy(N0w{@O*+`ykh@jNUQ1wmEv2#Pm!BEMj3sGt0Tr2(|?FGBui-G3PVOPZe;3x}AZJj6se z@{xZ8%JCY_PrSl-K!x~%lmz5aCczYdH1ZPzkk;w`GjP!lil=#PvTA;s!=?$EpXRSg zuZ*UuDWt{IG&P}eDoaz8F6Ie88b{Zfgug_8R^WbV%mKQZY`L=qDMiYlHADCqweUWu zIX_;~L-RV-U*=1lEMw5&!AaT+1HMGPYp{*BFz-=8Fqvj?(qg- zC7gt(FHXWBYYyI^o}0v%nx2jTVS2yn*hhBDh68>gGH72kMg^K9g7PJmukk;@nNz2ER#MZrpih3crD0 zuQOMM(bPV6%^BYz?7c)I%54LsWsWscY7``Nw4_s%PQPz~eiyy~9H@081cZk^9BWpJO4S*zYfQNh8XYrIWnSU9hfHu^Kz`z?&6EPT6FQoA?8=+jof)XA>g1! zZM}BEkB$@N5dyeP^Hb-!Q}?6e(2YbM$8`P9!(z#?MNns40ize_aN~hH)aM_TH0l&y zr?O{BC&_VyEWgef*Vv8g>f%a!V1QWPQW+Rt zY_ndokC$uv`-4fiyit47g*R@v9GvixU#_|(HH;Z4SD#^?4UtAzXPEpL{Ciji#iJos zGI#}(Pr7JB3zixN>y0&-hy!>VPP*hhxqf9Yy?+xa`zIUGQ?$Zp1OQa2BbV@t+Tj~q zZlAd~jAJ1I;{XnuquD!{S4Y%z*hzTcLyRTfKqRDL;X5bOiLu^<(@G&2=mzWW?9iJc z%UOIFVVo8rD;4^f<90XFlR1$95Se7WE#j)b9hM$i)WZ@ahy#z0plvPTVVF`!2~p{I z*fw&I-en}h(%CLvCD8NFJ3k|^p})fjqb$aZ;aPx4MBH3g3ho}PURTDGc)U8dj4$j( z{E?Bzi$8BgJh)K8c31YV|E?&oROKt{1c zI{O1Z(LUN;WcKq8;TM$h+xqpDL@XYq)joRO-vx&k0x=8)`gJ5!H#1H$bpFPO!G3yY2Ty1@j52ZI%S&q_u?GTGO zfSFXI-uw_BVzJl|{gn{VR)_kNhoaokCAi~<5Am=?XM5w)NoMzz#*J3Ob5o>v=gw_m z-rLIkJ72EmJvg}QTaWQCXU-OHPZYoJhb=hH^{{wAn&T0M8vRWv7ri-wuvm}Nyrid~ zJiKW&kA+ey zB(i_3!+cLnsSwBN*1!!R4lWD1>n_)V>BORJd`g9h@>U}6bd(Drex$qUav(eb8VA}2 z9^&@YUY;%ZHBBLttXb5w$3HK-tFOmDZ6!0?dbr9F@$SeD0Hw-YDHUb{G7~^E@c7X7 zyvSuc{39@bHp3kVml`qz?i#qMa96^;7H%cV{TEy_j5u4!fU}n~SAe+dPScP1NX|>u z)F=1=?o)H0;Awo=&WE1hf0Hb`FxO@nriGoWSMiGy-=#jWhCj|{tNqvVgzIZC&bqcC z-3CQu4Z`~UaH$yKW`xtl^eZY!oyX?SFDfY>ou1)Jy>4{+bvy50%llho<0@+xVDK89 zuDi^M(t8)oVT1O&_@mcXyPS^RM(w&UIw!ieM3s)N=b~ll?zaKQW^P*q;3Y77^xm`0 z87*wXs2L9@+PqQ4-?k{)P+LH~xt6~;Y&IrUqBgN?K#Jtj{XmFBY5fTqq=l$o_@trg zy&L#!yp>K5=k_U8Pi?>iOVlo2c7ywpdAOw;pg}jeIfO|Utm8I*Mt!Uf*<9K@e6^0- zF*V++!(+PxtSU@tBltmeB%By@Q~HsZdjk%r4{dCld*fWBa>QJho`Dszc*f`DGWCm% z{GbpUxH%z=%$a7WO^vW*qxw-+$iT`RmTASiR!_4;T2XkOWHxsl(i0;QvQ4f+xxfPF zjGIF^ka{X-8=2N)Oh7=h`q8s|sO%yeIkGTV z`K=^&-5Xd9#HcN^GjLahC*C)(5ZRoAb91(>_b@wVvLo#=;IWBKz^q)1S=pHK80&kZKR*~%*`)6P^Bk^e8vyn*6i=g12 z5YR~J`rCzZxCFrO1@Hp60l2ewKDLFAv+&rRFK^@3T;2IR|3<#_g5aLD^g3B&0x)qn z6Z9__1ZftvLmwm!fiw+ll;Makn?d=(tneU{IO6NpH4PV;wCR~a!KI;%64vDXc-&?a zvx%p5G&E^118Q1DS*H5fs>Cxov;n29;shj5EjF=Gi;?CE zYH~r?tZVTw;gxChzj5>X+5y4$7A>5w*~U7EW?T0y(C#13ht zl!gwfYoF(ioiF{GH}lTdis5Kv=hVk`K;0jxHtpd4Y|Iq~&0GA1fvX-06=6a9`vD%f z2b$Z{t%vCE4Fs;+rD;(Q2|K@dfoDnl5q0D) zeg{uhSM1^+UvuxOFdLOMPrSQi%QEqM;m0PcmdnG{&VniAvjiHT_c=!lY#7TM8?z{QWf&Spg$qta3 z6AzI(!jq)3Rrw|x4&ORfO)^>4n|JdpUzr$VK*T$e9<67QY)~!UfRxIJYV}&YCpQ059sN49bhK87Fug9%MsCCUgTML_-E>ie9ACC2(dY36()TX z8$}PLhV#+BNvs6hZ;q!vWQ(vpTcmD#k@rnbM>b$V%7EJm?gY42xY=;Kz?}}aD_pPo z#fyAaav6H+5BT46ln;B{FF*Vkj-uph&l4iPJoz!lYPgg~UEIijfc7*s@-cCjGOf6P z(Tom1=4NQIEtr<)FE4*e?YxIq#`uBYGIjMHK2DCocvPasesHVca%d{0S@kTYyzUub zu{Du^0E2HL&RjlMLEPoWNr*$(L{EGoytPBPRu7x?^pzdb1JU$B0>B~wvzH%jAmBUT zHdj4jzSQzp^*2p?h}7~2^*!PKQf+PGefqc1yQ2(jb~c{(6i<-hH7qdk zmY|xtm-mrciq)xm`B3iJdCy+{6W;&mvm$>}WCsYZK+NbuHajnJ^vCL;m-w%)6}*Ya zm7WU&bzn7f*5O{wN>@#i&byA`71@`d?QOyvxf>-kujS8b>q|VPn_oVfGXvR1DIZFg z)Uhw~L0wFQvNg(wCbK&CWnL$J_~)IiFJsxE4*MPd#!LjJ4%yG$>hOKMByJSc3~<%+ zx_q&LgW5r>7WJY1e5m@;K3=HawV!9HgI~oGVqGw#y&IqD$+HNwthlNr6Rs(;+C5tyU+mAxjT!(^l%@P4yu4!O>tph0&CF{61v7K_2~5`7oIpKm6^&5oqPlH z0*)9CstgQ_Q(9opd)hm8XoUQ5f6%fYK-cD&-kkf;6uJCXi4nhV|+3MEXfFGHQ z-`CzxeW<^P2T`5hdGo7$j3o2Dg?u_qCbD^ozgP&vq_BxkpkBd*RD?e}$ia^D1cFCc zg?ZtS_8KqSis$}qln>9W_7iD%Jz4$~lC~an7UoV@fn=d_fR_Q{^oI)h1R6%7Bhm29 zT|V~{Iw?Wza*!w7;0y${Hp;c{IY4I)aef8$1cKU=uX5xgEgs4V>c|KLFNi+LM=v-C zu@%Q44HqBe`P?&|>LP`P>dJK5m;#>q{3NyrqsrD#;`hRp*H4oEOy(SAuM}{}CP#>~ zcru}ZQ-sv+Z}30$+!vl?$`L9X^qr6lA@TJaJV~b5Wyx4mE@$+9aiWlnb<76F9ij>m zXY9GRj~jKBeCbz-%lK9t{)mYhSaA%x;$WtJQXkWE=TH8J&*JhfgX4hPILT;6|6N3# ztihv;#8tp~;sZy<2s(V8zUv-FR~bP zGR7sNLh;aI0n}+-V*nGd6J@!Yp|U6UC#A#=a*EgHo_OfnYG|OYS1?+rB=Es#2azsK z{J>K~1X)qMd=w`PD~32~;0KIs9mWL8Lof=cWf&Ga7`huP>jb7!XUeT@lMbRW&{uj5kfk5s$si3FkOliBL|~0T2h!4w1zF}ayxx;L-hp@K zaTW;|2=9b^K>4)~;iYT)+NZG!U;h^WktVXczs*N!zKL)1JYRrlg*XrO8+~3x2h8Zm zA^Zj5MEL85Qd)pkxq^N-u$;iBS$-P5yvQ5>t#iDL&>l2u7|xqjvjp|MxA{ETziJqY z^mCDtiOuM|lHF9X?B51M+v^w4e)G+I0D%SP|nz zR#OhWa!Vbgmu`K@=6dhE(ji1E!DKLRR1W<<=g~W`Bq(~nt@99jHXH~m%VB&%C<5d_ z`_LK+LteXl(94g&&>o*stv3IW$H?1Ls-;IzaFM%?o2k-Fh7qS8wvZ@+NYD!t9lDqE zY+9Qj-UA0d~4e%;2w zI=$;At?SY`qxFJ58e7*P{v3Mi&5P_W*5XjpKj<~~FDu0-?djmqGc%}bm^25}pB&+nc%%B>5iBwsYU>f6Ap1jP z7DJ;#0rVHMlE##nq(Lw4J&{qm6($iKv8@^}8WIP^kpo}u>Y;cRv6^)QKF`3#iZF6g zJbJw+lBk<@;wdjWtR&o!yH4AMPi5_NqJQoT;{wc?-+h1)ZJ7;(R!ntpW?J(CpIPsgyEOONhvKffC zqY3G=5~rpI8X@$7L|qKwa=ws+UinoazpbQ~1_F@v5lz<)G+uDb%66s8&&V48*9#=# zya5S(TOgn-1(!92Rk?^+h+dGaGxp>#QU@qbP{UwQ0mPGd92b12|uv|g<5p;o2#0TIm($HyCiIl@0us?7&ZT>}C$d*Nb38=O{+PjH{47d0X z5UL@JVEABG2q8w+N@zJYgoUOO*nke{2PjA@H(<#IF#PKQ#%%8`IzT^|1FI<10Y0c% zI@piQy^$HDcw5 z)~_)VwS`jT2=?yJw;SWrG{e!@LsU$sIe8AS=+!@CijKTt)sjfuMRZ0cd3^*at5X`WqnzYYHG_M#`hoBLWGuAr7{oz6WsE6&O0BJpX;7 zip^Lcx^?n5&RKZ%7J}rF2HjJ=`8Wj0qiXGOKBBu;PD`u!SpCCsKCyS0XT!2&rE=oG z?+V#wb;u`thOxR6&tuS}2z|ohL%(C@(6fR!GmzU%+D=iIe8Od3rJntS|Bc70r#|I_ z#_zZRc=XcN9jv&!#3A-3wob>QVR5$$Eb4Z0;wP{WuT&?VfDlUz=VL~5`tv_nSK)^s znXS*jD~joAhD&T!l2KV$L7KnO!Qo7XD0>MS7#)ppyBk|=!8^5!2{ha^)Y$Kc!@nO1 zGd$1=_|vu)YI!}7Ga;o`B15KEed8og z7@UFNe<5gti*2aLq4JMkjLJJOAJy_1HvhM%!#{&fE}-7}8O{Jq7gaSyvH?GiSSAFa z5Q0KTJ{=jA@{~lkLjqWZI@N8TVFH-d*FNL(c)gl>if45$LSiuxHAh`?iVux-5uElg zFcgVYF3tv@)$=qdSFKEa;}oCbYXk=>4YpbK7~As_mI_dNYB<9-EtXwjmW_Gr@+`NR zp)#in?Fn;~$dj~!tY%vKNU&6z-1K*saI@99pYy)*K3E~$q)=8s)rST|cKJ6kzD|H$ zioGQ6-q5ukN^Tj_W%aWb2T|j@$H`(3G?KJ{cvKxP+X|E4$G}&>d zXu3N8OK5f4ks94xK?tvrO|)4UrxkHh74(M{Xr{?daay%@FXDtTN@$*Sy|T3?^qQbG zp;ty2RcjlIz22NPtligRio^lp8G1$Hoylv1l08LC48)|VeJa|l{>2-_HWk*%Llzuk4idrhdQ6+HcrPK{R~B%ZC_dYTV+ zb>D}v%E%lEK}JMW+w*Wc3KmB`VE~}lhBT>*tq`K(@ga5lX&xv4{1|o76Y9Qb)*)P^ zTJdd?*3+khaz>#mtFV1@94mxc_`{yME>(h8RkIsBbusCP3wfG4A5O!rzo*U;4^qe9 zp;;W`L!vjEk^Tr2*IjUHFxL`OTweJZKp;~ zDh7R0Mee$8WmE}qX{rbnJE$^RPZ^cLFE-T#H-M1<@#^Kjfe%IeKxrHpL&#HS6?Ndn zte11}-`uEo3p$F`j`SC}L_aFzztP_i+ClvdQMKRdZ&>SZ`3l?>(|0@ds;wA|IC%}u zr)@BADVH97MjiGSkS*X2X7qnvxt_Ytm7WcqGvLpGzX1Lc_-_ObwpLG)&fLfnxk?YKiF1*p8QG@d$TYe~(S@nY0aVXG~ zGh@NKR_bW91Ez!EzVuI#ChCxk~P68t9t!ww@CN5kyF zi8E{p2tF8WVXuU-5*_mo6Fc*PrFriufO$#Tn^Ko7=@Z)fdj< zU%RLfC0=`JI_7d5^(#0CmXt|S^Qr`?QCL+_2^Az90bdUH9#%xfV!z_aZI$wiYT;MB z&-k`Hd=By$xO7~B%R27XarrdvbY>Whdj2auXmTS5GrBkjZ6U*iN;4}!f*#b;yfa?iN6C|j{n0v#LOY!g)AioZfeTJ z@^W(sP-}KTo&ai~PP4=Vjy>#Uw({I*+aT8x=`X}qZ)Axm+YFwt8QniD;L!Tl)A)_s zXr3_$MkPo~{0Z-?!G<=^0LzgD|HTAVX*h) z(ys2lKx1?p|F_X-wHaubAWg|-a7zSximxLDx?W^DkD)`46RU;#AX)^(&-hD z#UBwMcklUnkxK@RgEX&TXP(Bdz0@e!^7nOURQk6X6_NI>!gHIeZh-Z27#d2A z8b*z}*hmP$rtD^|aU6}a94^LPY+7Fm`P_oVp3a~g)Iw^hp_E*~Uz;uz(U1$C^B9wY z6W!aMpCp}e*Ik?~AH|aua~b#L;>q0PnSP2#-wppkt!KCxyFBLnvXOT5Fy?%5vYk%E zJ4Fw};1C{`xI7GvYcNYM-vAEeVb1d5kNdUBE9*`t2us1&`aDxa#TFJ0h$JD($sBA$ZBF7Q6{%de;}{kvF}3-cy2m;Rx0N zs_V{+d_dAyTZr<&FdXeTu4DaIFr$sZZ2}nM;j-1GYW+ptN9=z8Xk-X@H%}-`4#E8J z*IE!!22mKgknRG70d=H+X5fugu}`W|<=^zNV^);Kbb(TZI`uJ&YRTa!L6Sryq9kQT zN52dXf0i^SU4orG^7lpR*=CZOz*h)(!h;;7O=*%%FViNbjj;vnm4Ho0M6pad8-gDu zGo1UJBz=(=IS*JevFfuWIxq=ixFfADQs8d-CIq`q0eX|27x`kPC-hBeUgS%L(@2Mn zEo?CmSa-SWzFdT~Iat4$JWXE~AkRJ{53L!IHa(nx^;s3fS<{!>myI;zi4n$@jRe(C zsblWyeChQ1eCf}gr@vgY43oP$iFLu^(!MD{I`bnd7HwE)g8PE%zAQseu#%CAGLs__ z04_k80=4cE?=OFOL|?>7S1#ge|4a>az{NKx~TCR}5rkY_r%XpN!q?HVoJC(*!qdAbzlNY5@kzumaWg=dl-%g`Q?P zRp(`%Cd*iGK1JnoF zEI`VOv}sBMA!Er?f?kXQVz}r@Q)G7NVf4O3Ml{Gu$fI5uJ)p{f;3UY)5-?lbCZHpi zUsr;j|BTZY(~&QRv<0}Zc0?v1y%*Ap;Nr;f*K^=@8xM~c9?L)3gP$zWpl+NP!?8dD zhw8Ty4D4=zeMM@?lxUdfpkHvn0~~P+s}dHuGh`@swLt%D20y1wCNL9g4JT2*_YWbs z^q6zNYI=?gu_z!m+JvG)TPakK$^c&|6AyL_p|f{Aon?bgVg>KC0!BPw#I=Lbu2Phv z^7z(_&?>#NW2IONfIGgv6)pzh_02E5ELEAh&o8|HzGX`mloe+$S+IEF&Ku3rbrMfi zH*sm2`ie!mtDl{Lg7Kx#9L-_zaJ}ltPEtZ_nHEJCjKv3M8CaD%x05s?dAlC9MRy6( zKHYECU2t=325jpjjqXF2F2x6E7oSm#ai{uqCn=53P={Nk5oSQ(YT>Au-t+0=viQX5 zE+uWgO5Coi#2vg!T#FtzU3bwBeonoBT5%6-NM~s%?E*{L|A(*dfsd-V_Mdz2CfWRD zfdC-{SRg=v5CTNp{AEJ|1PBlyBoR@91PK~3#b_gL*aV`YO?|mv^g83 zKPO}fUmRmjy9EMUjk1I`aV#ymkSW@9&uOKguZUAMSUr4O4CsL@D1c*xMnxdPmB{~y zh-g_aW*Se3g(B;C0X@J>EO_eWPsbwHC4M5-%r(;Zm^gE61bB`pC2+#%dYc*MlFuqc zwc2n*62CLfTxIn0SK?54k%=^=cLXX#rU!W63p2VpcYlbe;IF18>cGX2Tv;Qc~DA;_9p@bMjhf~ zkZ~eZ5Y;c~{i~#icQbxH-W)}j1-iXsE+M$I+wd4r*h zZkufe5ya1rgoka=^nhqdN2oTbd;w@el9kFj;X5X>FmgdG62hqI&P)0kbe(Qy5x8)g z^g`rqkQt@nLCdk}{H?*}jOev?R@P(R0^j|N6;Bu2#|4<_z4{{pAlPJ@g?zPL6UHqY^lq2@yJ zv=P@Yqlv4ec^yArmAoDz#m7l>9}Me|L3+>)n`-4g`06?LTTvejWa9H=`oqelk7}tK zZ)~MRyOw`8)SNM_Q)Ynx;s;g5AK)2@=IkK^Ua+x7o~Q`^(UaEj(ThZ>B?0C@ zKO>3S^zaC(qEfyh(Hv?fl=IKNG?RIAqUlOrWb4XVeQQ1=KFUo4VN2iKk&nba+xgp<6WJFtH! z(9_0O4mTeU-UUn<{_0F<8&4cOWXJHgR)(?j&PYPIM24XRqZ)r%GF*V}e-GkI?Qqn6 z=&;)n?vwGL?dm~zj|?L(UCGFf+F`!uX=8Bk9%!5RmPFXs;d-PL;VUvz5H3n6d{TzL zffJ2~5U!D7Ffcg)M)u3_%h*>_3?|cL_%(RpxPY({>P_7LeG-hy_#pcb#17-n4HZP- z`6>QL3&Umj?|{$XFUAfVWJvw^ilFj97e3`0wX2jOTLUW#x^IE?Ak zS|Cs>;RH~lm~TYM4BHXTL%d|r*o`nG45!C@+kmQ>O8@T&S2^OLEu+Q}?nSs>g`r-f z4}SrL0NjtiU5@Z&gsGmT1W+t9x*cH;!UqtxY=+G-2p@8Urz1=nR`IzAA4Ql13PR=P zVjy}Q3BbL9ItpjF8{t!qFl>ZQgoop??n6R^!}u&}P?f0yzl-o$M;L`0=MV-1L8^1} zzks*^giA{B3Bnic1S0+_!q9?>x8f1LqT{V82oE^I^Fh<)2;YTpoFm+faH0r9|6ssE z9hxbQ1g|2Tim+6<^#;P3j_^+r&U1u+g>Z=@{4v7ij`05?T&=^d1cd7lj+9pGngK)u z5Yot8`TVP7b2;5DYyUjr;i|kTyzZv(rklcBZVCrbOh0fvw&O0>6Oeru!fqLci%$Dz zmlt%s1f^F4RU#97U&c#MV6GoQe^e7mG9HQ%r|DJr48o*H75**4q&OA+1Hz;z6$Y(H zQcS6!hqt8=5U>}xA`@58N1z&`iV^OV;h})V&qM8kMU1jT=wk5p1%lfxZAD&>too0(e!@gYDZt8NU|; zOb^OqG9Ivp!cyP}Sk?{ce}Plqy@;2t*CH;!t3oMKq}us|5nyg;JrE5xA~M>}t{93O zjCf>H86w9r+pA8Q?N)-cpI8MmNR#2!=xUphUb>x#gvpGc8flR6tq7k&c#jANStM*E zX)O?!WrA-57C&3!$RFMmM(vFx38V={!bI$!O#e&7?{UPV@sC6e;h?^#@yO3*a-nh5 zNF+vtk^QKdB>sM7B=(`vFAAOB7^ud`vvWmF6=?jkONqj;;LSqtoQyAIY#gG(=~vv8 z9(G{=Wd3z<=j8{c#Fjb=-YQ3c?Zos4;>K!#riEPl3O zMxo2OA^grw;oo84C0=S}{?8C@L^$Y^h%Yb_CjueEZrJ~1(tD;I?}lO6KU*Sq`c2`v zH-(qNUx61ml^;eiwG3gqX)<>;!VoIRq{`iOK%9k2>tuls!S4WYtlQR*8=Xx?oFIrq zXlCei?Vn`m;7#FUNS_CsU(!R<$Os_3ONOD587`F1x+LNTOF;nxHxi6?BSSZE{dW53 zBna1xu+&)e1cZ+wEUPFw16~5jX4cB|1qinzTr9&&5I%$QO^+>M^c{@d;zxqBGQoYg z>m7xt?lu~o$DCfIm!=(!&cg?rF;xN2(`q2nOM#+cBe~E5Yn1fRx#ST;(uYMfnqJ;Q zp929E=0RnKY`oF`!&v?y6mU)wAOjUYTjkO3>M-x$u$ZaB*(F+?j7KvoqO$sI24Yqs+^?Hm3$?P4XzCBr)?FX3dEn28IAv3vMM z1V~tw-~ix6N0>B1idXS(0fwoB!@mLSb%bHMEY%UFnoZN;_(;I%DqM?Eou&?%3V|?c znu*qBa~uziFrOnH&7YA*Bt!9N{><+PuK`RNQt=xAm+*H}&E(vMt()&#SGRF}&E_qe z)@|Fk_5KG~QSHVJ_ZB_4^`VVy>H3BZwe!|LuyNV?`!=#A8y_y)cwhPb#T&Plt$*MF z9yie(J!RFso9ma~bl-$*RT~=$S1nt#rD16q!GaiXoM=vn*|=dt z`Tb=}idOlKJU`KFwX9p=t8Cm9^Dil)*m;{9R)M80o7fGG^*VkyBAKU8HD_d?gu=Q_ z_oJ-x`^&e2?S{?wZ&_crXiMGZEgRQuY;@%Ft!wP)A2IF7kEfbFMx@OT52l;B9UDf@ zeD?d+@D5MfP~QH$Ds)=+;+AmrEKrO4^c;C7Q8n!;Tp<&&9o42fc zU>onvG_M8et#D}!DiuEy*0hW)3Imy$0GOH*!N(X|uF{-D8&>c+##Tt!YGZ7rg0C>P zO2V$SSoc=&1;$n@_^QBTpusO9MQ4sU%vgm?6uA`>QDO+VNVLTSVu)Z63a1&+M59_6 zTPO2I?Psi7!N{{-!6$WIcOuGH9J%u}*Y0x0HpmRo$&v|_9gXHBm>?KULopY9r)Dmi z7?n&%Z*$=HIq)w_d=Q*PzvGC&;H9LD{?LIx@4$cNz<;jsF^W;pj2Yv=Pu1yTG936E zOmq~dG3W?X!7-)UCSn{_5aXzVnCBft_d4=^&w)Saz`yRmp9tfFEXE;yj6?dE4;>lK zhcmEPbmfZa*x?TREC+s$1An&ze~$zI7~#qOpsv^_9TCquGLV!mnTF~tQozlg z8c)NWN>48O6hrZ29Qg4L`~nAFN=(%qU!m}*|M)eI40o#t;O}wZA9LWJbl{(L;GcKk zUvuDJ*LY%B^*6L8eRmL2&@aK!`6Qq#-Kg*fFvU^uC5<0cg4IfiA5_oSW(Duk9oL|X zj8#g!Ck`_m1*0s*M9{MzT&M^XpfU^wr*#rP7&DeT6pYEkJqj+@ga)JF+a-Po3cFXq zUQKfd@+z7`N(D{3|0mD7cd86+4!FkwpLD?e4tPMrL&2z`Gc?Nquhk3Sv@cey~5c25}ydJRfa?`q%@S+t5uzNPHSQqre7)zed|@K9)>h`Nt(m1$}}YZ z@Kbu!8h$~KTEoGF8ns5ab(#^7GK^2t)i(l+su6EQi6hM(#vYIbk2s7)5CtDY|F4W| z1PW7JCnajtC1p8a2hpS|U6)Cnj=ZRvMp;18RmL8c@JPP{t_#l_f^1|nV~?mrsQWMs zPSxaMxBF28dZv`}H1ZPDgYXW4&PUK8xKFD(<&uU+m+1-4=x*%w zLRq5yjXq`vK#Gkp1a(skxBs;~uElTw8dyiYPQ5AgRS69m5^@%ez!0}AE{{;|ZP z%O3L%$`=t7_@#^(5BNiw0r1#VY>1Is@d8$z)i^(6k4gME)b|br*Xw3HK8~@+C4M~e zwkj9`+cY8n_|sa-@mIA~Pw+DKsLU{-Ru?uQpu6M=7j(fB(Q3XS(@z9*s%1@VVC7GPDPoBuAEWEIAxCm?s34!w8T>`I^fGX%~YoGQ_fg$zwGtE&o>2WeW$)BF8Gp7f%deaXx_Po?Y`f07YbP!bq zPj^T*-67fZOign-1W-0XS45~5G`$P$KOAvL7dHK*qkyxH%qTdV-XTqfTN9;wCtj3H zXQVK;SHUP)HRFuNa1-U5wnQWZuQK*6nQjIIQgehEX}St$_#JQ^WBXKkC`_3M?cr9f zjyC#zTczo9q`9QwOw__Qq!C7#>9qqWpJiq_;1aBzN=u)&vQVYB?Y)y+Dl=PYzzMvqK0 z+oSE8?#{5y3-Zq{*M>bC)uXC;cDru+vmrqk->Xez_8C2i%7V7kazYlgr8JRMuQic{ zs!_sZodT>T!C6p?YAv_8b)s9)K)x#_xFySh2ScjUyaiH*;VYWaInbyw_&F$82`~qF z6+U5|g`3zr^ICE)~(-HeIi|(26PmPWi%hoCmF_nH;V3ACy|jgI4~7U}}GP zm`jLPJ3nAm7{T|*X~7!6TjaEW;B6BB5a8_+Pw=x655vuSUg8OUS>mxqo%cP7Cm8dQ zpqNGVBJh@sAXv>u&I5j5;tBpt68Z}8=Mqma{)mo&HR!zSHlE=8Are0a@NkJI7;_tu zz5?>+Pm&Q8h{%xYJPJxt|K_dmjZ9Hzr zVFk$&E&)6SFbP0(f}{!x5Fw=rA~e;;3qlz-EC|h#FcAU)rS^hiEaoUiNfTg}_Iwm< zvC|89hm9w}3ZAs_K@pG=Q=JujZYL52|HV#3@LZ2BU~VR3ugb#a`t_pdT(k&f;d2i# z_L@p_!lp?=&i%1XQ^4<{{)tmjz%LzzUD18GzeX3}-_O|plSKWH?rRD@7amnvVV-W5 zh4bu{U2_jUb1eW2$pu`e=%D@!yL7uR1c#zsf~Ug6x|^Jrq%z?97*wzNiFxHZ{k&>D ze9uE(HC3E7i&3x| z3yP6OFxi=C9S=>ih-=zE5XZ;B~-Iqw0nifH^g&EPxi(TEqfW zQy2zA>t$IBE(@6YKgJf8>H1z+qlqpIXeJi6>w#zCIsH0U;?WG1pla0Wdr7VC=Sz+` z@cp{WUlfP(l`0mcGxnzBZqXjbexhJV6NZoK>DMAirX*f;ma+R(`l~qYBH_iT?~@Al zI$)oqL-H?%+JCANHR6+>f+6u91$XN?-C{5lPJfEAw^SN1@iPf8K^?0(;F2uHeys4j zw04((X1p4;mK=t9`HID6Vz5>#tF%)OsHKost)ndkc{Oe>O=avINq%X$CchLERb?#8 zkwYAcT!uy|Rxb&z(c|edi1iZa2$NWb%s-bzmz}}QAPT;smob(@iE1!jUgCi38T*Ay zzZ?Rn%2<9#SN8IL#@>}_%90p+LBT$huT~Vxsx{HFM#lb2CECN-+Y0W*$8ZU+@H6%U z1;gZ4EBJ!e#7d?$w6aW3Z&o%ajY9sF$go{zUWML3F|-O*^Gk^@@79FMPwA>Dzp4vf z4Tf%)=~wsb^c5&rHQWj`V#R0$+Eu0Mk}BPrXl1L;PXt z+Jh?WHZZ5`<2KlV!Uu0dorNR7wTf7isPStcK^PC_RQfe%H50eH9B`Tz=JsNp_x5U? zcdb{z!v5G=BvQt;77a8E2ec8b-S5cUs|#Cu!I6GI!*_V}%_5Isk)vvRO!Mt zAj7XznsXYifwojjsX49TyYn1yjRU^G*n5)BCX^?c4zf*2dOEQQOsElJQ*AgA+Z53F zTC@UXjI~{w(b_|LMo4RS+EK1&lud=K+Q=0gVe)ZBY4UmjBM-s(hXI#Kd>3E{B+@hhh7be?^R6O* z!bOIYfU6~Z3NWM=_|t%ECF}-VCt)zm>Lpwa7=%UobATHqjC?F$!+FF+v&3Hn+=~8R zWVnRDE*WtdaGQj$0B)CX58yo#J_ESZh6?~P5EgU}1MarrW#xePOSly<@>81SUcd(= zOy6bLAv;jk57>oyv4Pn<-gn3*1l#~P&W6nrz#a*w0Zx=@FqtQtp!77qCYvCb=D=hV zf)3s^$R-4Q5-{>F+DL`Cb65n#<|mhct8pi60jw6~dLr2y?~HjYV{GW1CpL})j=NK*&+s)Uc?>9ye~$Ve4I zX`+a+fDO~uW3$_aY1grN+J+Nq@TAo*%0T;#ElG&>7F(ruBHCAMNkW5r0UxmOw13!= zglOxqB^jb^!mcDcO`;pHPr_Azk&en5-V9hWG@=})<|3{TL3@H-mu;A~14pFWFm3gX zD3dVM7SSMKNExw9!u^0zIMJa^yOEL!Zx&!lXPgHx7@;(DASIIW1`(LxN8o@RK|63G zPfHk#MM{QJ+!IPwSR+CL?dq zooXkV3^mh!SIRuq3%E_fWq=PzxC`)U37)ZwBc3s@RWH*H(;oY;LK*gH;A$JDt*f!fL+R)A0zQTMrvU9)jlF8axnA@v=@LE$STaGYS8-C+w0ac>DJU;( zPZd{=0j8~~aVVVd{x*yb9tmFr3`PiF2!`Y9YmxKoZ_u4S+9!EQP>>0*tMp0By@0bk2^T zEtejdVN*NcG#kGO#L0;RrKeq%o>~cm2@ePfJcxUcN5IAEvbAT8&HQVnMq)?))r8z!g3xr^N zaARcR;H7}T3H7w}JC@0RjMV0qHgQASFq+VyBWET>GPdOqm^;jeSDE7@k3&G$RbBu% zAy@-#^&>$7{+5dCjh`xp^0$Z^+>ZXgaKy3L z>6k)X0KyQ`p?q3!@5FFOED>{ol;Lddh!Y4_x#e3~Xk7O(kUq z$+bgZgAaF?miYo3mNb@ch%8vv%)Bk&q9p>2;z`)dUUs-?g8yLCBJ%t#eEfL}gC|%3 z-ZA3Il>weH{uA)8ig0!0Q|;}Ifp_4_8HFL8w-A1lc7qvTKRy$HAy`2=gfoKVONzLHi-P)F0E06RMG(%v zBXkM{1OlJrHj*?r!hbZ|3tvOU%%HRXbYwp}6`Gmy-U%GxFNO4FEm)u$4M%Kr8wT!d zNLoGR@(KGERI{8M$--GviSiWNG7f!LFa`cj;qwI!M%?tx2fqD;+cV)C00hW|EU6cT zC4p<{N*3OzQTPpMKqHt}au9fOWa9o8d3ODC9-Oob9{WEs?Ff}qrtRl!CW-j8XIZ|p z0JukQ&+TVMwlDN+=^SQx;fqFVcJ>Y7hV1+s!Zq1*5DwbjWGF-Vz29T`GpEu`bt^pg zeg=Y5Pz_W5B0S=^tU*67{E1xeB}XN+%nuJucLcsZs*zmA170!hMV23Uc$DynV|$vt zmQVgTh+$u~Fu*vvF$ifVPU9>DTj>u@drkmnr*(>FA8!7kh*LzYGCFfs#h0F(%CwIQ z=(2(BUluizgxPRBwEZ7{K8SRI%53kP$|TfrHkdk(!7z8lL2_PAZl#)X|9lWQLuid| z{CiQj^dX1WqFPa%8|_;zc3c~n@vTsRJn{+u8sxGwha|oX_k^~~P9oOvA&wsO3(0$% z?py^)LY?qZY`f{ktr@w!6c^e<%)>=u0}SqNNV|t`S!?nPbgAO!!T)p#pO#M_o_-rP z593U2$r8RiD`G@ki8?Ec^W(gFg)yRI=@TVJDSzr|V+4FQzjlW?W8-AxBieGazwqIf zgg#52MxeH4|EOSwJ;d1JjC(w3YxSJ0bw#!7x6Z0qU&rneVSAIYilhzJ%Qk);`0>&+b}l8J1VH~l z-9E0F#~qs;+dCdIt}>r8W7Vc?xc^5tOcBE-*{#oZBB?d2CzbO*pY4g*WbGX6|i2E#F|A zfPa4G+fElx4ZK>u;qr;{4N(Ur-UWOl@Gq8c__zSQ_IQbR10N0iqvadkLweV<5+4UV z92*YY$M@Bk6DBSK=`^6=@nj$$a5~^5z%v170!{%uk$+ZWzF_P=^4Lc6x5l(Ybj26R zJ2iSj>dj28823!WeT=+olj$|#XyC*qI8!L(f7}Ew2%~vStywub zrD=58!KSDc2eTJ5@-I_5?NK(!|6*uA-~iuJYmS;-GNTpErB{@YM;^_6-E5Gr8M;`{ z+$h-yyutd)zXP{c_T?%Gg~$2fTJyo%#N7jLppi-!%jxiDR4VQXr^^9G7c~Y3a?$p_ zdafOWsDDOBFRoqz?okxt0p3HMJn-R5J0NZvzg}Z{kK}ANcN)US3iuO0uY9KA*~x!= z51e3}3;Rbcy?SQYcp@6M@{{dq{+#h<^|{63wuGA|&DmlxETlXGvO?DP}uRvaO+$j%3b zAPb(@B4+<&{04g}W8&^!-gnI$ws8jPTR^snfyA~FS2C)sU8f+LTFqq=bZU%|&P!BjB16V=VQ-5T#k@1)YWn>8JG ze;7ZHxl!<7Nhmr_U(X%w$Ba$kOT!shbhRUWJs9P?x0vZGz#4T{qDD^HFjWp4uwkM2 zbQ>lmtCwg}sDaLi@{%%*ZV9)EPH)-yEoO9p?i7wpfMB@G`}*4PMl^pZ9T)eAM-q>( zH$4ViuGE{8BhG-r*^a$;j5ia`@Qey$Qe^A_psM-j&Bpjh;a}q)qE8!C+VRu_Blxv? zbC9~Tdp2DqY|WmP#amj8X=cpnBWu299*ro)H0uyeuP~)5e*=!rcm9O=>B1Rw9O-D0 z)QtVUX5EZw7UVsTs}AAVT-}&~)>c*m{*Mg#I=tMB@dCVxKl+uTL6jAtPOD(>+EBZGUHyYw zH*H+E;lZt2H*RTIcURs08}4QH4e$C$&g@K#T|8-y$8<{;dF zCx)Mh$U0OCFI9>@J*rjI*Y*I0pbNnMQdCzA+^_`n5R^q#btIw5 z+@2t7&zDJ~l51vW_8j{j=)IXoKKzF1iAwjku)~-EjiNh3;9?h!d0sxg{;QTm;tyqrOwpG*C#tkc>QH(#S`3 zO)nLgW@XW>)1w!okSF^Yuh?hewletVr<}s|_&(fh-jA!~AX{+YAMcNb6EN~+KQk{B z3Wkh5!O#BD*piR9CrjV}jU52&#!zJVPp}&26$sg0O#JyJFely1Ek003Fpfx81>RXDy}l*$;l0c z25`At2oqjc)1uPMrjn}}O^Zu>O(lQNQ10{LJ+u$b^5Rx6^5oEv*A%rV14CV2^KsxN z0f)(Q;18J@O;IZoo7}8#wc99YikO)(Gip2r#EaSRSWjbC$Olh*ajPfW8JZSk6OpPT zJNB6AR*){ZK;!GD#+N;j;d(|a5TL=KVp7F5jkxf_Z{J^Jq({>PJrp9Re^0EHZ+LKV zSa~wZ2YFL`t+0UBCGW$}nk)E(m%h)7Yp!#<#mkqGTMZfVFRwsltLv|)7&J>qy?Jxb zheEksVqEW1Et8Si=F!+Pfw}0G8}MuF+(}hSyc%UYQD51GxUdGd z4^n4S`3LVD-*@bJLo?P!aR+i^%NY3D6ECOej38I`B$&-j`tk2GQUa4>$-y5iA_@1R z9yikI1tIw9Ka?`r>d8sI%0IdDeE%J~>e~#jrc#ug#*iPBr*Rnqp>n1 zl*?c+SA(B@l}OjokueC{J#MtYu36Kf{xaOPKH%%O<6w`Td@szgtAxR(`GfD9gBBPK z!sOxClI&)8fn6tbD}r*sN;V5ubRl%QCC!E>U0mTI<9Ct{;nt4-zT2D@JdnNKgR5{w zi(}=Vcyh}BnB)u8CS?Sk#Fd8s4bONrQ1SO>!qTqywoHaeUCM2QKgT$_>#k|a2k&Q- zYCg4IUOmMqSiRAc(;A63{#;rHX`uOKn9rhd?+2dn4i9{%FR>lrK=Zi7cBp+G3!Q2G z8Sb7UFV4*eaOv}8=4x(Zp4C$(7nHs2om2kSWW2YfB?jIam$(}RxBpDsX_i>5Q8D?vl{J zl32PC@gn&PzTSLf{66zn@y5s_U;KwTHzGT)WgMgHH*hN%uHqZVT3e<-sT4ke8vw`Q zPInLoTn+;hH^hoQ3k{Cn`KmeBs5!FtRdeVFqm#dK8Z*Kge*Uz%96fl(FW^pWfG_xk zd4GNze5NMRZPhfV4ZcmT23_N5+Umz0iMKw21(Y43(=LWSmFAHqb(ER-w|Pw0UcNmdSHVt zL87}`sZmj90eLc!H?C!|=oCm+uaq;18j|Bm9Ac)13{l3%ksi=y`&;Htw2|=6*astb zQ$ZlqMOH~20whYpc*3*Km?^1V$WCt(bhB?dx(7d{P&bC+U7POOBdq1>>0eZ zq@k~flXU?v_#pM@C*po+-PwlX`0vk{tEZ90gBnps1@};+q6;3vtwG1N9l7h*W=&LH zzIRZFd_AtGB{6iQ!PXK#^hkaoQ*bNRHMGZe(E*{efj(Vy=^AxD)EV*5&zU_5!QfxUds$L6$|03qw|#I*za z=u#3&2i~RD(=7jw3dUD7J1A9v{NL|7R_l3?;Rf$Rv zWCz}p_>((723hojRh3l_Eu^6gF^|Dp;&DFj0zRDeH8tC}b-!WYoflODBgvvhg!_ErXv8H&X6J^k zV+peWhBNR)9`xfC`k9XEjiW&lVS{XRt{&)#HU4LESZkE!trsUx2#Zf2F*r-*|3Sz%l?(#E#OA-q1#%PQ6)TWY) z2gQhkHCvJw{qW`B3l|wys>X0!?m$0YjR7WrrgXdAOF%Mo zQP2o3$tH$72J8kPn>Nc%4PD2*h}VQhkB2Vq{5CZ5BIxeLysT9ih($C|dFF0to0td& zYVg(p+ZJ{$t`rX)>Uaq^+V*0X;!7x)2%KPfD$N6LqkqK22=?s(-YpgZb49D9ZcKy; z*Ktl1P(vLwu2V~*`6hMJOG0Pfww=(T1+T{@+cFY?O3t6j!uT|9w?wr<_%m= zLn?#)6vIxk@XEw!#e=j)^$qFLF}ovXs0n1|UV!)WRA|PV$$khU5xpj=glgjkVd<9B zeZkNLbOOR7H3%ev!1RtcnddoV#IR_Pn&Ar^V$j#IytUu_W~ETR^r)KI9e7HEpMo z-1EQYIQU!~aFM+b*+V zJ}Z8BN454#Sdk>$QHd*)Pt-nEH*+qVlZRcoDY+L5Id1;YWvsTP^XD&P8LFDUdl^%Z zHvZLRyiT9ubN*~jSmZ~t%XU_L;xA0-@zPuMjoxw1a%gBFY3R2fen3iEpca(v^(WAX z$l@>m*(}1fz@PouycG)zU_OKM2KC73{Oe`s7@_mTPuaPKOQ}l8k*(h;U z@=3Th2`9;CI&j^5$Y0^DwU5vHD=OhCzvr)zE|ot^p;CT=;sX40dK}mxw#XbH0QZSZL%+C?8yYX>&<&P}-N^ zvWF*M#RFF?UNu(@hJ^GpU8t0*BGgI8$K}J5%_dn5SjzvkuydqI!$MXaKYtaZz|h}q zhW>6YnFbp4;g@~}*|FbtC>wTr{GeSw7x^K`pbJuvbbhCFQ5rSWw!cg)>Lkk8RQ}X}ndB~$MC{KUcdYjFh->E1@tNJw zXdFHs(9-8vEJ}i~(I&%KDqVf@NX|9$R|bqKA!LpU9;42~UO+M)wo6b8NXFx+|9arA z$oSni#eWN5CCI$%W&Dp2#+niQI|=7&#+&%kk50x&l;NMF7P}CCS%&*DOO0;>LOSU( z{u{M<8sS!%;4fH4EJHX?hX0N*r7yF?Cd5iO=LknbiI7*NH%A~`3kKq3dM`w4KzNS~ zPhrnYwgv}>xPg;GnB%e3N$pd*(K7v51S8d}c<__h3LPsNSYD=s;zqlqc@H*1^&p%j z!(T^U@$-oPW;U}u)G7LpVq;D+3N)n>ObD2A6lqm~7#ByUA>1Pg9z?hgVY%#QzJbsD z)c;h;_+KFmA(dA|^CN^wY0|lq`5Ek@6k(rC|5sGuSV+X0ZG?pnR$dn*kdDTzLGX45 z4JqeM7782Jk8rh2kMVK5A7RO`g>75o4#?QsRo1^@B!x|Gz%|p5}iLb@yC1R{j zh95!rD#H6^_-S~L?Q(>l!(JOdh68C%7PLI2ocb=A9*UZN1?dmV@DWTjk%raC@SAKX zn-S+gz#eDR^Tno>F=W;O)PVFOW_^W?2AI;BV0cb91W^qCm9bkdBfr$N6@n5=5HAIH zjlv9tYEGK33#ODq0yo$UxY7}ZVw8I_7bXz7sCng9kX-oWL7)gG)7LRR*|G*l76NIy zc!6al2aBqZVXaK?J$&srjIh+83#L%)g+^5TX>7AN=U@;GvLt};6`B8ioCl~!e%U@; z7Z7&Fe+nx@ymHFt8i1`XFGYqnn?OVq_7k2(xK@S-qjvqspyHEpA`MI!eKH>JO{=<) zzFmeh&>@k=Bm)t*;@e^#(wE5iMOe{-X_~UiBktrCE^A2SZJkJy#kaVusl(S0{dAfB zC2Tjoig4q8&U8jj877FXQC}B*yn&DM2f`In5$?;ck49K zhcwOTlh_)D^g${(`XYQDsLYT~t;xr@b>^5fG#;5IrWg%J!KJ#en6+q_3g4-Pi8+Rb zB=ND;n$g&Lls`sAK+Q^mSTK|>@o{mwfVdRR5N+#H+KP8+$>NiA`uHqOGagKn#Po}Y zy-yb~EU7W^7!O8E6ZZst)v4VMYf*D@p*`U8U6S@#!?Q(@Lcw=PD}A z;4Y*I$^r%-K+~5nc~nuH4yn?FhI)18pCk(hqkK9S&8iY8sxTnI3@xawVM+otn;w{n~CufWD$R;-X+w z*dHUGC5mX0TU+}`)R|&vWSP!9vQ|quvQg(9xeG`BBooPCPH8APP3KKstMexJpnSzq z@+n>S$>(%^CtuW3j)L^VWC5d4z-$GhfRPH$a=;K^hQe1l;09@cB>$*3WsQK3>LxVm zl7>^=@p959$r%{9gAfHSeXQWl(2s+(U5s%fsmx1#+k14-Gh6On%rCCz9sr;KGx zzpk3GU|dz%*cz>^vCVLaDGL~TNYfb$ds?XQr^Ac}+1RtX9gl^omGydiblrQQ6;+t` zlunP2NMT0Dm1_aULA|Q($3aS^A-X_AwXAX7*t{KM+aDW;0+bz$>(fk(8_?<+k9t+w z8jpfin;yT`fv?wUACCf*s>dJDOiyUk!b}M6(u5{J6U(KFQoTAuY88%_DLm>=bx^4R zEmblOh;j17=FJJw zGeA@2rLFtHa%pH8AhcS+XLZ3DmvtRyfNNzqGu*mAn31Oon^CUQ&!~2!uXCi|6Yf87 zX5fAfR=Hg=Jrk1Mrr>Tp7R)>xE{x4WUNxVX<)N}{ z`(v|`bYZigmNk;l>{gv&cBk&QXZPrd#w~|*np;llG`F15XT|57)=bQSkcx?0gWyQD z>02SClK56Iq(&-VDqhGWL%u9M9Q*t%>?GB7hBdRu_=lfCBiNBdrlZHOI(3r%fjJqV5XvAm371ejb#pNavv# zHTB4A)jZ}M)w1S6X~i;cK9+{^u#iE&d_0LRe((S?#u0%RbQ!_&r(%MvGT^l|*Uo?~ z*}8!IGVLHPzfOA#$cJLbs)F}xx$~h|rR4lm1WS9)?{^TrsuLB&Y2QT!UI%`jEd_~C zuo$ppuAmw(^s-=bzOh&eP_PxSO4F>hTM+EjCQyJzQY|yj1)(qu36#nBna0!itT4V! zw+lZSn95s-^eRo^-CEOy+igt?`SFQ9TsMW!>MAJ20*@*rf@G?mipuqw-J(W4DK3Jx)I_QX1*qv|QNK3E zA{3?!ycp_N23zb=^dWz7if*;VC|I?&;#2y3e(}5T@F4557>hLb$+|2?VT#e>iyEGf zc!i&zghftSt@AS-cnG{Hs3OW75w$GrcXR$jST2(V&))`E7Ce8KR_}aNhqCthCw1K~ zKw+~b{RR6ScrdDLBDk=nPG3@@)0aTis<1_%Ss@Evgz8h8 zSOme;u(YUEyxrODj~s4<6CJ{NC6yWKtyM4zD3tJGhIKXtd$6NN!6^7{1y^GkPQkDn zMRReVemz}$4&|#Cr6ujUyDvS7)l-?d^o;I}OTmzOwOE?2(=YXDZ7ua{VV1e{tHrV; z{bs)`OKOhfUsmdfSgV(omVs+Ege(JdYHqV^zn+sUJF3;b?6h75T6RHCF_vA`ld9!z z&D`=t^uKD*T%M*K>MVz4s;06W45@lu9?>bMMrsg9^DMHgI# zvSf1&vNEVb^#Ns&>_MsaGDxO|{j!s~n##`V>R541r&$RtHpsjyYaIA`op)ucW^R>_ z(%AOLR(*w4J=x4wT?gz!z2H|~rBz+tpzE?6(yPMA6-SvYxcm@f4=EU0QLA|6SF{1H zhE~*+a&?wht7SFRqFTY~Ob48&Cq}DFP?!AA2V9B4X6@W|^&SUFbWci@)#tS+6%gs` zlC=tyq$;TbdGA#C=XKr+bofdQ70|O{xia16OlYpMSX)OWWGs+`DjoW)GBu$ph^q)y z?b3a1)qeddUv*OJw(5*lL)AG4d=VqZ5LsB&fOcAVTOz(ONc?S(QWbU^bf{h|Zi6&l zmF6>ST%d|KFdM$?z(arlG$!ych$d+qYZd?|Jj!Ql8fi&{0)QcnBD$taYhuj-ZPIIc z9civ=>2F76t9E#My|$*?Q8mgSZojDEwPmQX`Lf`(YjuXTPijur9(2I3DXuXy9?*pD zh~(QRSYOgNNBYV|d;978qKO(Hn7$>Nmn4juu%KMR(>FxRZ^Ln2fGH2~^y$z7&jLOT zxW|U+lc7arAPs#kwE84`4lwi(qzL*>=!&x==o_Ic(}wB$poa7XWQ3HSzP-gsrs=y|e4>q~Z*25EgVHQUzIfyjFyT8<{}iAPYw2*ac_mWjK`N4LybGahs|S}md_yYJ!5A`Iw>{>_(hMuh2!24@Yae)mnRx$6X~vd#UoSI# zZ(zfk*m!pBN5S*SiHLX0_$0);5g#YxpOf((8J~i958}l!KiV`Z=BW-A_zW9DgU%S{kIymvgbV_XTVz{6nrd z5YaTes4?)n*|cR)owGTdyN;FQj%7)?b6HwWi21S^r0a*9q(A;=V{qcn8-uQ&GzN=) zCGwCB%-Bg1gaR4Enc;thmBJ1@V)rOccoSXh(@vs_3yS@#ds#6ut)k=K6iLUv>AC%r z|FpxBFt|@g#xNo5?q`$^_`|@<&FG<{vhc$wxKk92U51J#(xp+sR4z6s2it(iv^UX) znibcu*l^)wul{|ZTG|PU*X_n^FSd`)g>*+5U!;HaU!`9X`X4X;Quy`rR#Flv7k z-5tlbN4iGvX9}#EBTp1qdn{ulA2ZKNHb1?_bLLs2vOgAz+#A}DGYlov9-D(`Ugt@A9XR-S{T|-aPA1#!LL!B5ShoFh4<$75tC%n8Fi^@i6!t zdVIj|EVh1TMDR)Tt=b?_hQOU--)sx3!tU->P*5GJtrJaXF>TPNW{L1FI^Bb3bMAf^ zKMpyFjqKm~QzIREAaU)@>^N}%oQSjc(AxMN*iuf_CvkL|2K#Ua`El6UKJg&7D)X!J zt;td7g+Pz-jGvh!f`@1eI4t1kb1`Cna4*?qFAP z3(#AT1yWXUPtw206V??*9Ca{_%;mDs|C`+Nff3IOE36Or z%D=c0aq8#7Gd$;MGlk!EyS45XadI3rlm5myjC^}1G}75b$5}-`!XE6eXZ{l`izGmM zN$11wGE#$7{VjLGGAMR0^8gkp(f#z&R&F{z*_6FR)G?hu5BwH&jA~N?ji{ z^Kd%a?Eah(OC32$LmU%56Gj0T^QB-33Vj@f-i<=(m;eM)c7el($hgv3D7x z))3F4%IJvct_kXhX`-Xr+?1xtg@z`NyumoS$vBRGjAN@Gp;8_i)!1YeHPT=SQ>Y2N zio;P?c<(~&dfTzi-nDM)*77xf3zOqfFi?zXKAb+#`m|CgF6ST2OXC~j9J;m`;#|QE zzjcUhUJ|%}qGO&RyrePKLBu>Zql+xftWqthWe#sFvBp$yFYah0KPj3Sv$1(EM)9JK z#@udZZOy^H6!JN}{ z^An4#2}>@3KlhEY7=6t&Go#4@ng~u^I`m>3ru6@;6Qc|4H!QLy8Vxpm_(CB1^V30# zWn=IY<&X{j?5~a6ANzKrIt^#DWw?lCVwLnoVrcQ%MIt!?J{dr9{5;l8(cAZb-=QJa zMmXOyXloms?6L-l_X01p53<$#FN>|I=9f5Ww8WZ}{pAW`p>W@|a`ZXXh-bHE)4@IX zfLY1nDxz^f*vnFKJkaEmB^j0f7InR{>+1I4@ol_miM2Y|bnOv3bXN?%nK1LWAm5{q zZ>N2J$d-?#I`rTYZSf{OH{JHTLhd)o@ z4kOAz~%zmwrkggprVLWXxCoP_Xk8E$NDVM$^nzyPu&^x=aNAFRfxm8c9_B1>Dw;n0d7 zhDn)Dq1TB*YkLzGMxzZzF>>W0(|V~<6yh}n^NvJk4~6(fOq&D~G<^ayui{Be{{T;7 z_B+|@gW9G)Z2K)HzDhabHG`IG7D*_}cfy`3+{7eJm(vg@WsFM8RSb8%mw40^DYW9;A;J{@)iDS;_;)j-7qkgFcCwhVl|h;%5+5tZ58#9W{q zARKwO5^r`pOZ<2bPE=`wdvVge3*M1FL~})c@HY}q@Ok!c&{?!QAS zJ99bWs>3rn_^4~iWiFhMhHHc}n(Y;1E|RKd<(RRFb&s9sUUs%%ZbC=x-`Q*?rqN3| zv_Rtstr}E7s4K7@e^WD?6z;OevHkqSN-Jp@I_P%T&B?$Av*|!-H*BX(@Pn}&1EL4< z^qv}lC;a9a7c)jtU*CxbNfPFu*Y`T=gQh zHZ;@r=FRp#khl0?6(=by|g_;3v)n z1Gw?PvIb>WlTce9Ax7zG5-MJr+*M_ot(b~?F1~6!^$MFexP5{sb@Y7TP~wcjLef-<#BZ9fd|E8iP}R2y02OcH&s|H zuD2&mtX8riTz?ksWmU3x(eWT$;;S}{rh@Pb^SH*q8O)-n&wg6YqA;-q@#`RpHB?$G zy2F|lG^l-%LFBHtrz*Z~!^X+#z_98UY2^DCy%tebP`jmfzwJA}EyB~DH4Ji3S@@#q znzqw0;P_=A_-vAY`>+0ABZfG4-~pt4zq5?;2cCOHj#T!l&6xm41PBE>!$TNcb{NNk z5B;_=ryp-0!jI)UKM+;5!`MHAvq3rUGgr=+SV`R*x`67ex^Wt8G{a^}w9OdxG`+nM z$Bs4!--H3u;M&4Uwtw4x#jy)vUCoX---BpAZ{5&A2X2b@B3`$P9c(S)#l((i-(YL_ z1fb%kQY5Wc+(g`~63BQE=L2_IBZHmIA462U^I*vEP-{eEM|TqLdKy~{R)yY>i5WfK zc|^Je|CFxGK_^YpNpjH1bkOn9J0$3&1s4Pbp`_eyJ?`KWKo`xUD&O|x1Rg1Y-=fhh@>}iz!1i>5*Uw_gM#s?&hzAt@JwOe zCp%&B9f#<}EPX0xmj5-DD)Xj5YgOVsNKd+{#kw+(P8i#3ED1|gXSV<7&_Q9Corewv zVTne?f4q01;>Gt)G=27`#)?;m=g`;uiao<~(Bqf*pEhWuAeSO-)WM){Z50LXMQ0_e zld3>0C+dQ+o_W3P|A=oad^$uvcY-CA$Kn3t__o9hbl_BwA5M0jE=0l4UN04KSQI6V zh3j|U^(+c+PyI%tdV!a{V2Z%Ib`oA$Gc<7h3}`W;C930viy4?wl~7Fxn-Csl9Gn;K zxDL;h*ZQ7YL}MtuXkWYRfUk;f_CyE+eW-ZPxa(pa@x)7PfX3VIJ(K|j3-=^QK%@WBj&ZCWj5I6>y))QWaj3DyXRnAC?lt>ca8%LOhIs~cd6ZfK z#%9r^g+r>nW;X=5hGu?rN$Aw4(onOcA0asJFoXMPQi??OM@IY8Od=$pSE5`naS=`O z8Je<#0j!;vE);apo`zr+@`Rj)Y?HH)otTAmVHSclaa!~dw9%TvwzI=HS=og=U44E( zUS%qagHhWlk+;K2;_ngF+$A3k#Yd|%fP`tPJUNt zXNPz}za(+bNE|t3z6e^U=rvYpN5=VDf)x3tT@W#XZ$*wC(MY1qf*CL()O$lbyDGHN z!YWF)i|VX)RmL{0^X-yoCPT*_C!mT-r^u_-2XsspU>vB36qg zCKyKBzf3knUrJl2@dU-&r8zb$^{zubGO@LbMBp}4@YZIuW8CCi3!ow*8DcSfFZTg^~75AAN=c^ ztn}gJ+NcX{<2V)`>6;d-;glaC*Cj$4e2}A$if6L5ua_T z!x3J8z%UcvE?&Rs?fC>coV}t$Ig^1^jIkk>mG4FCctP}-@DO)30|OHrCx#AJhTM6e zIfuN@bo@hnUf7S0sH^hYQg6-_B$+)Z+$rUM(ZK zfhXkjP0+Z04&O`+MJKQ=S5+VzY`zBX&|z+8%8mfSnD#d!b+77 z`F({ajJ5pv&DP|le${{D&!3 z3V%1t8lG&p(9wxF`jAG&%5LEjFUYczXRxMXB)%I=^`V zE2<6>pH+i{qXKCZ>&y0I*T75c3@yrwMHq~dkS#f#=VR2&R2(wq6}AU9r;lvg zYOOLxo{?|wr{&xGNx6t{jQ{ZgYsSbnn4H+S12atu*Z4kG!!sJJ5i_YtBtf>vNzTH( zjA})=Is}{v*o(N`Erra}G-VZexJ=<+t+A%@Z#G!bLHZ09_!Kkcn4(6!@%tnLnR3}6 zO|D{i1E(;s{yRF$$1vO8II6L!7~f$gETN7^thp|0#>&4v;HF6$UMWP9q~(#c$Usz{ z!CtC#R32Xcn2F~FzU?9Fv*aUJ#m7JJ+A;wx4pl(1(e^LC_3PGS=BqFAufA@LF%Lh- zlN+r+MWlda0vuLPICAY_YnBncYJO4KtXWwrXY#?@E$@*TLF?6M>~wi!V#K75>P^F@ zry_k4{^-{V_en|QiOKdJe>*ukQf}bW5bwuUx`@dU*w4u7_@pPS8Sp?=L66h?u_vqo z(}?4rKVeOX@IsO-KJ`fq7*%}Plh(9x7@x%NkbL@)qSJ{?bSnf9*+Y zRP;GJ&Z^?qpRtnpl_#x4(@f+s->~MwtJdOgVEIgubW4&D+>|6)CJ915pXS4*SY)9{ zLGedr+J6=ALHt=6?~+f#UAhSeMZi)R@7>}`99{zNWrZJ+-?DihiE^MDY&J~TZ6$HD z%^JZAXGM(Uvj9zLlXR%g=?B_Yw}5aEOFq589p+oxpt!Sq@9c=Nq)Kamzutxq;x4R{ zwL#fsJmH&Im96I)^l0bHzG*E)@@KzkWtb6e{uZ9YX=AkbrOKxl8#YUM%v08c{CbJH z0DoMyn}u^LRq1pITtv5>-e{wG;$ybCl7^ahC|6-ZXcQ8`-yC9&{8f#i|(eE8GWx`moRMI6`YNmXaW4E;gU27pr^*r7@%$yiWF3HSu{LQDW z#FSV&0mP1~vO%L7NlS{LrjCyv8u~;&%!8l88ZPJw9+_J%TBB zG?XfS=lHvW&EdgXD708`MD|-`7ocjMGPK#rP53=e=rxM}iLu3CEMkG%3~Jus?aj^v z&A3n7AXSF=5w1TB%Y>OgUg58_TeD_GD|=C@M22WEB7O=7!;UVqQ5NG*?Y72@xlNT1 zuW*7Yv>Gj$XO~3}GNxXoQ39fRY1=#fBG%%%8uXQSkqx8_@na*qm+;s)jZq|_$K>xm z0tl80>b~dbS-`Qb}%p!-8@M|dR8q&~adGS-yP~LtU zB@FG5*|GA}c)H{+Hqk~i^@Ji~rGkuIR3j#zJIqYx@q4VK<+V2@M#9*Dq}zqWzWEOO z5C*k|coUpKqp>}9TB{goo6Tb3aF2g;j};TI^hK#I@R#>kIb-6yvNX4RmZFJ6=k!DG ze0`6VZfxMw&~fLt+F0sG#1DeSNhL8*4C4++SW!$zx?aBH8EXdr^{fa_Ji_G5Nc^ty zcb~C_-}SIiuGTI2G!j2>BYr3=zC^+*j&N%wPL)Nt`kQdYz_s$np0yT|vk37^lTS+C zFX1Hl^a6K>H9 z!nm^w;Vv0QUhDre_C0V>9oPPI_YSz=f@oGnML|IWii%3iA}EUzgNSjBkQhS(C>pdx zQ8A$@co(%TB(}w9bNzz`jcrZp^Jh|DVp~O$`0{M(YfWNXn_4BUFQuu!JeruqL}Y*8 zGk0e1mG-^g+mCq9{6FW+nKS>-q`;jo-C&_!1@~3yehH!qvNdIX@Fdh9$eXJ5$Ou@z zNI-mLk1%o>W23a!R6Inl*VIP*c4)h6sIqVhy89?k`3ZyStM&QE3Cnodja>PgZ%=J0mGJ#xZXRHJ| zsI-0-i^<@jbPE>h!}_?Ba5bz4e#*dMDvUmW11!Vhn4S$c#5(Loo4A9x!Uuu>C``xn zBdaR`bh+T#F#e;J}UeK+%0ey$oS{rz6f`YbbkO# zGhVp!2Z4S<;P3FDI+g`;w64Jv^qn2{G?9?uVeUMjtD1Z_*KS+Cm_yF%S|oX`dJ7>xDkE~J}ELh3GNGU zO9UcvV5^JLUzOnsVVrw`FNEb$@xg!64fc~QEydD^Z@}FHcR*(FH0}@=!R?Xm=inv| zDg;m^qw3+#l;I$76d_nD-EU&4(1Z4;-H@gVQ75Awde|+1NSs_6+X9YCE1i*OrudQk%LEX@aoupbEesa*Ir5hL>>-^#uH`Nd(X=$@&k>VImidNc-b% z?OC|vqO^NUgFcF=-}i9a z7~!y2Ya!GISo|yk`auy*Lje)e+-5(h@+`;%SNXjcjxT_IsB&W_B51N*_PZXAAXw;* z#6{kn2$wIBxkuv`{yD^v6kz+6Cfw`8zvHPLrq)gvB$vViDR zxRV_2T)5${-2lrO# zZUam|KG4P77`Oi)%c=R`j$kX6FUOmec=8KC*_stkmes6Xg}1&|)JsPFpR8z6OcG8q-X8u7efm}VPFHC-NZS~5X?kV_McJYu7Jd@zjd-YhU~91t7KKSaNoh?HBlg-lgee zsntJj&W^+5?lzMS>E4L44HYX_nAtzleW0TDM|y$z_K)jUg@v~I~_?! zj+^k@i~3+Q;YEGSjz5eW(;v2AH`G2>v%YNV6!Uu&^0OE9pT+^14I7s|zP6HZuc)lt zarDlB`Nm87FS8fdu3f+4o;h>M@)zfoEnf9l+3Zzo6ni(oS-ZAu{RU>e6xt`6x$npN ziw5LmM6^|X%#RvZa4Gs81y`dVQE;7Yc!jmH@cn;w$N?X5z-Jt3&!M|f`9SNB0W8|0 z#&OeI251m$Wki++&&r6b2IRspWHk(z+l6UBR9QIGg0@u=8t*FOwb}^>d>!R0qYy9w zA5QE_v8i|E*fuR(C|Fr7a8=o66J6knvV=fG%Pq3{#&{yWh4CmA1zWT z;}VfIw*8aHLpFyZ&)SqlUbPFOWhaG1(x6?+|InwTQ#5v}G&!PNq;!fLMN7M~FakR(wk4|y;qiU1|v}jPTOxBQj0)=!m zs8=>XqCtJw|F|T8=#M^cQ$uzOl$FB%+|IOrf}Oa(&k-lzuFL*K4tNQ!=16Y!NB*j6 z`ghxDJ;>jfAR~F=F>q0Ey4|!qC?FgMR4Re;lse#A45C!ptvINq;1);PLw4PJPKIHF zc`k$<%yZpl*KG!)J$7L+Nsc(+gkot-z~)vA1TgH6Do|Ae!wa_mG4i+MkHw$~g%ezL zz&&>2Sg-9L3l6DFW5FSnHWpk7`-3ZCe{e!oYwQtQ=3)&LtOPI?1*=Fj{Z#$~5*)DK zE?@xaSQRj!#^K-O@Nc!bHQ>0z|C|+H&`*y}gfntbOwUaye=?n|BsmU9g#AIWLOQO_ z0q=CcpjdGw?u;XCC-i?f@eR8<4UDrB3`D`Iuz{dbbxs4f+6rnQ>QyN#GSeM~Ph$Qn zg>m3TyA=$)uJQ!^gFG;%CnF6?vZ);8vrXy@3fKq@s&e=T9sWQM9962t+8vb_XJ1rD<$d4b|0mmjaFT7XXz)}!&fw`Hj@AAK zS7X*Lt6=aZMczw zc+{Vg-eDe_nqip^7|l;nISjHAh9MJS7&4*Y;SPj`10h2dHXIqL!iEDoWlV2)yN%p% zqEb>nyxZBWMMO{BkJw3!U$BQlr4je0CuVhMqIUju9OAi0*6yK6RHWKVr2}Y*a8I89*JsIt!b3uwa5RXQn6GdC3X}FR%8BA1&##8 zjyPvo*w)=BP^01}y6q}RtYYjQnP*~KnC&d_xCIOP6OoZ>>xsxnsm~;26owNVu+JV` zB%wN#;l89pc40{;>?*?&MtFQM8r)R~jn07nR|AL9z_e0gIvOlh+G;fFH4FpmFbt%_ zaHj*lVZ&qM>^#SSqbmLwAiYAA1^UM{*%lnh2>eQk#F+CA_^O>a8Pq%`<0QvB{QY+P zz*@ygcf?PxvQ09k*V-yPy~8eeVy3O2CgwQce3Y*=*FSM&AB zV9`U8y<~vAPQlmhkxvG=rwmMHxEcGpjFSP%l*Xr(6d_ z{+Tw#Q;X~#Z)&AIaGeSyR8Kgy)d8dW!u}WRdBoIi%U{qx4fUkhHLcD8gBsOqO+!ZC zkX)H|)<$mHc?W#SuH$JaV3UlWS#5W6nLt!6cxARg{#CD)dC1mcnJ7#ll!?N^@I?pQ zX*Z`#6sDTrUErcyVUB}T_{+w>n;=)hHu#Lbgu(O z)u=eriyd&e&6Vk(c)2Wi`e9q!P6uJjmHwZ8-43|B!0yZM2G**>xEpbl=JJ81DpTJ! z2YkkEqCQlI>LYwetKckfNabl{fqKQ>EF^A}m}Y^cs@cp)vg6D^!AeieXj5#&od3M7 z!e{i@ttlI6>t&wVIkr4yqY5zVvf5uZ*rM2&4Yq{gP8;iNWU460@!AR}C)MHacfd;= zFbY$g&N*Z^znl{&Us02D$*!}UYYrH!Q%x}kNGO;Lu!mt#sq&e5%;wh24jZ0@I9ntq zW)(3OB$()*1x!^&v&tPXuvS`c);YU6W_3B@KrmI>T;vso6Kq!J*4WjNi#(O0%WXyZ zYJ8V_#F6;813u}1&)Nv(qQ19EYI1>uLe%fJ5%psbp(Zx|N%q{qUl(q!2J>$VJD49x zC}H#i3Du_kC|I>)ezWXL5w0`cAFy(xTuhxeUY(diNqWOg((#~C*7W@%<((m zCAP%QL0zgz$Q%^5O=SeB{*HoCSQx(GfUnv4J_>$JW}07R z%RxSnP=b~Z>c^=#KtfTUkAlPSCB~M>IQKw4R4;l@3glm{$={P>BXJK3Rt4NsX?Lmj zY<0xxunU;$wc9$GpjUcgZh@^Q<_7J7$=sbPAJ9MdoN@rZYQy((2b{v#Gm?UPYweNl zy+BA&R*-2|WdZ!vpr+uk-Q)^@v}%3@7l547N(EPKiVILriu!`<4!FmL=YfrCnROoO z@_Q1wc|aoU4=ySdKCg?hXJwqicpEkf1Gb~E1s88sq_YnAq7BbS0jjY1NNdXY^J{F% z=GWN+(fJNe%x`7vITing;Fgd-RupG%FchUa;97eSQH1(aTq$aDz&q{2ih$@|S-=7h zWBU}m)K)|bmf4DE!8Vltu!^+HUM5*^7`wI7pX}f(Nxtul-ODWm(sN~;g|qDf78cqC zFgIR?)tL1ILIS2VNGo7t4jf+Ts0SP`;eQ33AmNVzCt0v|C*TwmfK0`?xE$$U4u8Ld zzXmv8!XSjMe^O!Ee*!MDV0z+~1)%>az*PoEu?#>Ru_dwqL|`@2|M!4V9U}gp0oPfu zI1C8H$zNXq|Dc3_2zaZ6{{pzlf_W<7Z8HA?>i-VOfK>Hu37>8=zvO>1-tJ9 zd`-gd0`9ips1m@}WdT0G3E<#xeCd}jVNgz-6aMD`w^^{(0T^!br(>0x5obAwjdV_t z0`w}tr4}sCQX(Sx(}_IVN+p=iRBD|TOegQ?1Rwd+AvhP}5lrXXs1SnbteQ)vrE_Yo zla{|hhtyn`EC(G>b9GA?Naz$1iSMWeoFU<3fXgk|n*_K;!uZl-?i8QSo#`hmn9iK( zGJiU5hAc%KI%>vA|5E}wXU2=I06Ig)Yb8vPc1pMlu*@hP2t;@+|KSOMb0iGpA_5Y= z09fWj$G{>aasY8m(26sX+JB^^a%2zSbSr?4c}4mq46GxIC0q|!W=co9BHJu~I@T50 zZNa0FUq6}W=uE(+mOq`u>bKK^>Cjcb!+;G?PbaSWfjZ(uS}Kl}Bv~*WjB*Dom<~m` zkpaa?4+1`K!IRDczAE91fRPu)p+ix$OG+>ufQpjDWB{=!NlXTiHlk#vbjT?RnNb2d z&_p|(1k+)r=qd}Qb4$^!7EEW9q9qb^J}FuvL1&Zt$6ImoG672@=nPW-YRi8%()9-s z$RB5skWd+4&xdD!U`_?!dj<#XBocI<$m6s8=`4|_$%5(FkVhg^h_C0E^am2kC_5b$ zqJ2fmla2+&xFy^M7?)f{038RSn;sO2j{d}yTQD8-iK&%v5@1;{9q);e)YH+P7^I=J z_vHY-A>m?Ne@d|6h4{v1NZ7|FZTR}*wH3?o-SJZGK=b1g*HrV+uk})Gp*iph_nLo9 z)#K<&z=*>P$XnLb7j~O#3bb)9`o7M`MK0`y26)80FQ^SQ8}@7cBlm#2TBrH;d3{Xe zA{=Rs`n|)n`opQ_5SUWe9^SF;k$7|Dc$i;*H~^e-gjMy(R?yDV&86e@F|n(*p*Djk zm`)##*wMamcx0^yUMGZ+^|m@PvOdI2cvp{;me#YT?#OszNW}DM(=#)Ksdd-qRpwLg z>W7TxWL_lizoksxii2qTnYTHaoyu4h3e_*47k6KfCBgj;ZZvlL%E3Ok56sc4nv?Z) z4Qcm#0k4+dl}*d_^#s?i8t$cdu)`xRaJOhI^E6D>z3`^K+PLgnlox~6*FnJ#q2(yVmE`_w>ZU*BVm9O*zYWER4bi4Svo1=skVJ$iTX^Aj6%!^yWGG z<5@{)K~FPWU1eV2P;HL6pzn?7+CC4LtKPVv`@D_w^n&bW=G$19#Bf{Bo!#s@W5)hQ zzjI1CT}h;Lpr^t~v!WILDo#AbF<1UZUmI1vJC|t(#_8qe<=@~+as`~O##uaI_WnkH zMmuXh{ad}*4Qp_{Fr=MhUjD6~1Q&}!v?8<) z=SCePa=`8kbN}!3Uuzxanv1yObZs{(1%L1CPUhX_!HfEjwQH~4_j`Sz7L(tctQAuo z`uB66`O^FP&$ZguR{lXBpl6l7oXgk&ASZ&`S!obeVQhshlvLakee4f)%YR_m)7YZn zx?l%pzc6koEW}-2rzd&+uim;2Ob*rmVjAoT^c;u9s|@q$O|B7%Ny2`05E~0^nz&e+ zl?xl5C~U_S&68DOc22~>te7i$QI=nrnuKiuUz>i`hZF^913Rw3wyQL{=QFg!NU{ww+heefAbkGR<`Esw@E=JGS1r#yD{ zo1LRzHS^)cWB`aRgJzuIDQ$M!96B z4R-f>Um|?aJcMNy-04lBd%A=HO6h1!drSJ~wg*pZ^(9ePdV{#6T@w9Yy~i|I+pA!Uye%KFxRyrdX?dNwky&|( z`**#*PSjZk1~QG-l~`~y09n^IrilUz8gsQ8A`f~XwJ{Ct%7S4&9zylhf1;^INj(88 z)j#|YCa$_+i4fHeIUCQ|%ei{_fmy8f z@-)t}7v!%@Go;pn*S zMmSRR{f>a01RoICcjXKJTwZKZu$?kfaG?!1Q^w?v!cToHVBGG8JAQkvMqEqSUZxQj zlHe|eI|c3~1{^hTq#_^_@K(U-B?b4MY_{A@aA%Yh_Jb;1l_`EAi__G>( z{fJ*n+I4p>f0({6=kn65Lg8Kl-F$Mlk;~45jN~KYzi|q)pLw2QnLX|2j=wDK8 z_}^CB@P%bI9N0>5Q+wo5akaahB^3X_o#WddxyNVltwdn+tjME4W>@p0k!Q$gLnalz zXkN7_^nj3r=_LEbl0p=!r{fQzu4hsPK0~iGBmbs9iObcS{)VooxFU@ODTTTJZ~BOc z^2Rb$N;^O!0B&+>&fo$Wp3IR}BBW{dP$mQ@V3mI%NtBuE8n->yl?1&NPyQuok!t|g zLpZ{=1kiQW<+b--_qCz_2wKXW;!>@yNMnAOkrqq{;zkKwdKZP|Z4NcTs=^s_=`}t3 zuGW?<+OC#2wYHW&Ylj+BJ+B52dtM5j^&Aa$d0uIGK|74FBM3XTJy|>6oa*`6?quzR z`Svw^w(IJF*JA%KE_rKR=6xUQ*#o;^1X1u6Xr2kS^DcAG$9nRD45_z8H$wFenE?m2 z%pmOZ{gW_i4mrTQ6;H10Qd}Zg^_|wL&FKHqCr1>o1DnlR|E1r#DnL1sbgpyzVRara zdsxG$%*JHyYn;O~v!c+sHT(VBb?$>9%DAlYcwi$L{v@^c0GqLl({Ks#VbP!GIO4+u zRH#$N&oO`XU;6Tq)i9d*C8}Z;8O}s@v$mhOpjH0T|C%U1i2b+7k^$pr; zGxqOjlf~wvf7hoCOn^Wn!H9DJR*?LtsTA{Q3f|TD>EHE4*OlLx@BdwYY}o3?GIp#X ztuuh4ZoE96^+$Zqfiiuyx%3l#lj|~~eWFi5j**|jUc*LM87A`xb*TR&SXzKhiOcKE zS)U?Cg1P!r{mzNkARS5QaD>!Q?7V|8*%FTZ$6Ln!Ka25&7~i#js(%|AWbSo+(|FC@ zv|Jljzr0`(I!0k3BP$o`AQ$RDG=FOP)Qq)w^W*D!veCWeO?J)rMR&jtB?kLH5imkm zOm=`^N-I9N1$Lik(6Jo$R<;%jX=pOom*``=ZZCp$qCQExkd~qL(hY@h{pDPC1O41J zC_tiw`fvG;15ES?t!1`+rjG<)j((<3Gn8Eifi|dxxgNcCe&`SX3a*RcE4YvV{|wA< zJn-Kq;T*u*A(@p@GCjfPwJP{EIQ&GOaF@zB!rh#!&6nMEO3-)|V?vBA(a=@oBBwjM z12ao#oV{20RiQ{u^LiiH(e4IIFr{DOMer#b4-;;L86i zU+BrB0~^t$ z-iEaJ0D9^;G*1u4q{6_Me}AZ&#D&DIAR z@T4@v|I^lKsk<9_&%&hd<1LzTELV>)LUe#ssikXs~PMsGItPVb`D( zx?%IxZM@hWFfJDaCXK=va1Og}F1v}T*fols3;bYFlWfjhLxpsiuiVt<#B^J#Jk*N8 zN|)*C(H|Tb<^sBya%#!u>K;9D;5FmLu0X@Q`@P1~oqi~bYv!IFea3Lih5X1gS@Sle z76haXu|rVw0rTS?eb%F3;^j`*_WHytM+k9f>~3X4j2LILLK}uLxZA0y5Z43Jq5ZXZ zDyM$yN8Y_xv|&4tN6Yh?_qC^Q>C;?MRb*%@xCv%&-U{iD8&3&KV5Kl_vv_->mII4m z^;CF$D=gHU#{37S;9y%SlSuc&esFfV=+%=Nb7(-#f-rB?-I#+%jNnhmAx<3Zulp@T zwG8O`477GU9H0rsLv^zohIO*?m>WaLu?Bk1Bs57fI;E`bq`>}BrR+B2F-@a~uR;*5 z6T)WXDRz8P0=S3)@Qx3(r0t{ezRkS%>bB=;@el$xkg11X0>WXFRHJ-hYg76P*np!FPi9^UFJ-ZE~O;9D-T`42?jay~eO2P_4XD^9vPYCQ*jQal8>#0Fzxy zsMR(E8+H5aI8*vk05^6iv zB7jKni61cyqmL?cQ$L7`NmF4=%)K>#VQ%x4e*EsVE;iQTnoUS28KsuNGt)&beosm z{LazKWiWEpQYaWq;9$b?-~pDjZXTkIi{cZamP`J+&81O%EeLx%O3?R76rUr8i*9p9 zG%qv6(_3gD8dk(;+E0@mbou|jox~9}90`QI&AI$hDT;3R6$z7GkPt|R^*r8Y%*&u= zjSp|uZ9!{Cqw`XpB!Wh3p_eoWOrnn6TaQ;y;ZM?qGA63dW=Xh!c2>0Gbr@-eyy7cn zS)h+)VT-`miTTCru%JaI8j-O5qAw?7{`k2H@9 z$*yO2i2R-iM_VPvp68)q@OXrmgj@*o%Xus=r;Q1r-f|iZA3_aAdCXW3f9x(AD!Baz z!B@#sRBK@4Jh1`-jcUoYAP3w15pT=%VPM$gK3HtUYP)^BdCp;@5b;sgE1;Z z)7$Jq)#{erzWuIpb5bmizgzJTrbPd!hH)^MJlEkb9=Suw@)5~5|GMdm;bvnj-h?h{ zEYne}<{?p`kr9aqp&`oK@9F_7mXIhxjE4B|)`lfMZ!N&#tOzv!xZRgn#GV`$`I7|J zPnC$)iIM)Bd4vrbOq{Ocz zCV-)iDHEN{q^V4@W-%Qmo-4DLhHhn_3f&?r?0MgXh4y`2=4 z`wL~-*806kfrhd3>*~#~4dBBkqUT4un0G!vLzV4dh{6HouQLAlX`N(i3*l+LG=Ps7 zd>wsb_+<*Rpb2-E`ThX@;KX`|uosiC3;8{0F<-ROTG(UX_X1@2R)YCx93NpEBK19^ zlSO2Aun2e`X(+{*sb}8NpRE3$nDhFg|A{$-EXFO7V9r-y&R3QMiP@EG^sf)3^#1+# zLAPP0NIcR8sYZ`0R$}vx;$bMP8i_af9R4IS#?u%5{?=Z1!}yE0b2ky9J$@ihG;U)m z4S|TUpzS0iDqcyHP+meIy;;JY1NzE_~QABn_X%P z0V}m$sVv312ho(>h6PU&cnsS33okNP_9+$#h7?n?#N^5gMl&d=u%TGH#!vsJU|a)> zqKqWdU<{Te;CYgTBzdsB`I+$zVN=zO?xb5hBntnq20j=%+*pD(;Loif5Z92NznH12y)jw$O>XY} zDVRhfUbY=>C`t1BH8_9;`QEb#TZLt6TFwrIBrEDfWJGK%i?EE=?n$mgZ9F39hvle^ zIAoAd&6&hSbh_|nKy;v7LZ9*)yIWXP9tk(*eR(4|Bcjd+|r@KEDNf3qxl zQYA^@6P4b|E)d2IX~Xd}k#Vz*`X{PA2f8`XO8MB0@uOgoIfRRB_LFsrp~RMdmO1sf zRNM8NKJso%b2FI8zd`k8fFNVWCtk3s*l6zzOx_1cg|5wR^E2OL5KY2ve(2|aMe`XZ z#ZvY|C!?qtIh&6q5WP2uuh0RzNJQ~%!M;cbzD>6YKqE_{c8?ym*qk(kV}Y}zP~%wO zEjI5P!p9ZRN>Hd?NNRiNJo*F|F=p=pXkzI5y^U<(j_37^9jEn7$Okk9#{@1;Ok-_r z@N@9ZJU)caoVmp2s>M`d#tJJzv1lH6$`MQwDn;tI!N>^B@zmqyq@ny_bn{OS<%u*~ zwu&)d8H&z-nfd-uo~#94>mABxXs#18%^Ab^9la+&^GS?WAHaKjV5&}AdG5S@ zdXf39VSJ41wf`_*8b;%Wb%jA{-A5YpAn(@l#x659q#xV=?~eq-v6zHwj1`hm9yI!3FVy zD2FzHxK#7#2tLh7Kq2~Vh3wP)m>I-1&e01t&eMovl~A*5k(^X+DrGHZJ84=G7G-Is z<2{h<>ZVyKcmwU!Ymi!|_$Us2qh2$U=@{BY#`cLH^lu(65;Sg{$ATy*m4=a&d2_Ps z6Z5GAo;VN!ezP2TqSL#%gorm^O5kH+U!4MDu(W6j#RI?h6CfMaW^V$YJT5@buws0Q z4EffqWNkIA^X8r6TOr3}i5|=VW#;0Md`86a7Zdp!^VyO7LCtG^G?LF5DW~X=etK6| zG|C(AAXO?_fX^%(#h0f+GU+vGIh)5s92$vU`=+iWr7;hHc-}$C>3)iT;{M)2=T}Obf{sQy}!{>4Y0HCNU1eon#3eL#>9qL4(&*<}c>* zYGVtU<;f8GtKP@ZRBx!&8D!i=%b3c&w~Pl7eh&P)*oR+%+ZGfJWGoq$PYe?x32KRI z>jk&oo$xzL_26&sC1cpAbQe~&_*oP{{nup?b~}|9Z>N&dh7LK1ybSj)D$5YdIGaOw zWRzc&RIZU!)&ZfFU}cS>>Yq?~8R7Xv03;y+2raRQ=?#dNU4+bi_VSJ^x{pTHq%bTw zJQgE~HqxQOsQ<(21y(Mg%F&*^a`hq(ns8micns0uC+nRwhPg3>m}k z)*d(S8^ec=tO7{|*u*ccUwtu9zbZbkE=sJrc%WC-nVZM(spJ07Z|X5|#VX1XkVxx6 z=yfAFwRH5VnSk9$Uu(WUhL0N);m&&wlkHZFy9_NIYkR52Wpt=-qc`5nJj5<@OfpKZ zHkT&z3HW>~868fwc{G`i8FJ)5MH4)!FF`?AK^NPb0rNvju-Y7z!slBXL-FZA?jfwQ zJP6HSh}m<&Pb%1aD5!KGLV7LTv1gP)dq&e;KYqvjFoi#V&x5{8p&Pzac*|f9bK@Br zH#l+zcr5`OCE0fG&OXcHThd(ffr}5;IIDk=L zu)-CG)w|U=t7Sf(#^ckHfRG{}yl_hdpoGl&hT&f7uIGmi4wm~8 z$$?)nSX$%2Z;81yjZc2$HYA99B)No$R3A>{ilKf2|6Orl500(fYO|65(O|(psEy9U3XAbuDJd}8D9-jv;%q3Soq$fp*3pr&DrC5va!VYCi<9mY?ouV zj>=Q{K{urb+Zl&H#z|U{!=Dsr@lVS5=909Ck7yN*@}@qPMmx|Xk$L+fx8ckEt@=)U zv3%Ks;VsRM{mj2v4{mwg6}KhNHLV#6baUf*At-ke>?TrD5C;_w#0 z-_XQ(-oA)4GZ_}|3f(zbZaiyNaKHD*<5{eDITa!g8A_Tp1cSXasG}q>~K;na!Q(6K*asm!RdM7q*afx5sT4MGf?*l)_nM@gx#78y=rLd%TPx626rUFJpP!8e4&rXt54Uv~FN-3yr;L5@ta4 z=KGU)@ZjKe!@=Mn$NGe0W1m^;V+ax=1AuGf1L?SMb2h0arXRgN9=? z28A?)cd8{el*dJx#|mTE!nSAN?~QX3&$=K{f+JwM_9u^$Bb{{!Tt=DwbJU zm2s&%klQJCL>L}sVl%F=_y>QEchP8d>EUCOXnab~niAXP$hwWRi{zSiJU$tw=8(tqwqKP8RDc2osP0;WZ(n@lReHuMyp!`KxJs^5`Dp;wRpQ z?69e znc4%*_!EZ1k8_1~8PAUpHlkVn|qfq0KGoWKU=1MrNz>x!Rq7P>zc2T9hh!eEt z8wkr1r=w7sw=o$a4`ISO4#T20Q!EQ2Y)UeY6s{T;=ff{7N6jC11~C7ww}S3y*WP0oX%0$LChOZ->FE~_S1wrM9x zEL!dvi_WSX2LQ0duUFtpbDZ**b9Icuc)4s3<~Or=0yd5gX7Psyp71@d?ecA6=~PHl z2qzh1XYhN`3?G=mrwt>;AlFjAe?ayav>+QW_sl?JJz>5zgD*6y!2}QWE9hTJ1%lXh zrA;Wx6C+;k>ws>f7f(rT+(yu?4C9gaNRm35^Fbt5Gn;k2!e|Qk^IBOgRF1Dvrxo#TS*h*^J%z?w+Stpl=a3L!f-9LB*B0 zdBXN6pxvGgrtP2;;>X z0JUXb^LW#r!-ppSW4>Yu3;L!NvYJ4=G(XD18Rf|J0l{laGi%KOc&F?a`U2 z`ltYo({f5~K0Axw8S&7r(|oDfJ_`q#k+GNo1W;g(artfUj`zi&>o5(;aN6x%njIi) zS9Y*B8aeKw)eIq2_viB2I1Fb#m&^0Z!896dJWQy~54Ds?#$)RQs~Iye3dewDJHBw! zQ4=>vPQWCYj@pSj2W&0eAdVsr!g#EC4u1#>FiXv;e*U$XWoW!&zDuJ#^Cdr@>iX`# znV0>1;n;c_!BCq4yIaEJPdw%eao4ijT!h^+^Zq=ZoLA(CN=;N;e?hVwz@;GZ2y)*b zvcekK7L4{p{Cy&88th*-U(Mt94!mG{_jbVh9W!<|_Tg#z1nufNM?)zrSU>~oP3Fqk zd_u`Gs4$N175u|-rZRoGbZc3D+F!*nlX=2_EpQfNX0!pFG7}#3;+qI=y)~ zE6K%td`t<`8EM=?^zRW}#Iq#=OW0Bvb5 zF(17L^FP!a$H93zS&Zl(VBrys9nms;SHujeT4hT$Nm*z4fd*>Yzxk`{m>P>!7xKr+ zc8tNl>NMZIhu^v2Fu>!DxU)gY8xys1Y{+=vE<(wrfZZ5+yMak&eKXdyQ5-O=Cd%lp z6@+U8X&7jaa!f@pn$zcEqhwX6wXpAn|CgPLTH$xF*FAYZc3$^?d3Jut=%rK7yHLU57cAR9VELpv z(9c)X_yPCRL>q@RF`|X!q|e!yAZjvvas^_VK0nm-dns2Qgl!`~Y~qMMQq*zakNY9Wb<~i*#HH@tuU*96t|RM;Xm&S_#cA zso{%>?$UYaOfwH))`Zp)--!0z5IuhqQd-+=xvUk4js-y}jfrfRklhedf`#ry^GODv z*|Sz+7UD-Eeo^psbXy;=RJ2a9Z3`i-t^dJPFZ|IuF`0b}D>MgiU?I)yp2r8@6JA!J z+98p|Gm!;AL z>Y*unEQ_4H+s}-_!r!orV61AA-~(RwAFgXy8u9;N>Mx0b-aKRUw{>N<8u ziBZ~CAvO=CiCbGFH+0G@2a&e*l_!X17cxTIy>*oYfrJ9JNmE!fFO6<(Ws-6Pqf@EJ z1@paIu9yi$d?d!_Gm0QJwL%42fsSD<#`-DM@N8x`ry2SU$xp9ZOM~)RH5S#hpX|$ z5dg82F+?0`h+Dk)z5#@R}WXFMtf)Q8RXBA%G0j@+jNm;cW<8O+E9Joync7M#)t zPk(X+ml{AuUOU5Sb61jB=fEDWRmc2>P(hd;2e0rRVprQ~7y3*6hcwxt!^{|!;UHM3 zvoXk8V+ja5jIbjJI|ea2 zZoa#K@70RTHTUtM!^9?*5r4l|ZeY<#8EX@3|9$-4(WN*vuo1)dB&gFODxbE#F-lFs z2@PE6)Jx6Ch1g~)HD@ivxs6h6CMBU$TWdbLkSE8`=uCq~NEPG2?=D2&Ch}VcTaGw& zQcwA!(vo@D8b&#CFFti6Mxv-yr!P~zQJtXG{%Rv~LStwm#7P|-)Q@Re6_&0~PLPl}&Fdi86o*|Bzvk*M;VL>>p z4(w$ZGKR|K_U1MeUTUsi#OG)i%vTqoM|#-&Xc12mr#eWe=7$=@X+zYr54QmsEx4oq z4)4>-bxN`6NPDy-55{iNpqhL8ED<+g-giGw#1;58_w%87v;cyO@eu1%=)K!|PtZug zDyjaIY{?l^(myF>D@`cOc4QMl!@pwl{rmZxMKxlOh#b*aXuE@^NEj0L{tVwGgp0p5 zw9Pt2_|;Y8TUaEd1w)69LA-c6#;|1*jjg!bT(g*uc;uRK3Uhj}U`M+;CLo4hXGdo< zS3}xI*ncH5^)nbEcvyP@hVM=d3iA^ zOXG=?ilV-WTvG!(24glqAshh#0LJ8MzMLRt7m0`~Nm%DEwEB07!c4lv)< zK^dd+%B>TaH?E?OpNh=GlXqTs5d<@;@Yn?jH zZS5D#lGAT|(ahCN5BsbH{7F=HL-EZI&FHP{OC=$KHnh{Ch&2&Ui2|(GYebR7%eukl z#}9ys#i)jL&T4SrrB3(JMTr8cN=sbBIE8hC5XF->FOn=!%by?m{5WuQQ(n|=EiLfm zFT(N@&Tl%_8Ib6|Ba~{C7K`!@-m0>fRBn};M<0ZoZ>9TV*=?#4Kc@|Isd1jXhw1{$ z76D{I2jU9kbr{j7(Q!cxyt<9%ZjAnJx*KK{2sx+QVT3E?No*8x=<3WB){X6!vnqd! z#bZ7@0b=oH{AaY>+C&Ro4Y&`}qOtl@AF#|VZ{ieI>=K?k^1&Hf^x_%I^`+T!Soe&F zuxOCWmtc^GZQIyg=ISLp@hcqy=m(UbFm0ke(2LC?AbI<(w6Ma43oxuQP=zY0)@#s`VTQl%OB5Ko*5ep==xniF}&geH=D zR<$uTGA^gn6=yX0(2HVeIgyvkup)W9mhKTfXfAt*=av;uXwILDHTHOtZr9Ai*U+0Hv-@)!L;UofferG@Nbl$DRNXzJrE%R1SzU+Z}0G|JjXWogI% z8!|+703Y$J?&xs28R^^Sr(elgwgjQU{D&y~^syU6~D~83D{8pKEZ>`>nY5 zwZA{hzJxLDe(FdW8o_)>71~=N25UGSDGoP(3k{?-`XUh(JdLZhd&u|t@oc0L_N40%5q~0euZ^4xC_1DM5rOb zk8V`|Vf}~xqxEmi#<6o=Q2%G&4WlU)2(Y4tvA)1}=7vHgX#;vOH`A~v7OLM`;A=>} z-`h|axIz96g)_Y5Us5=r7sm@iFnVFs)i)#3%)iw=cq(!hb}o+-ThSogR2@F-bnXf9 z1ymS~%ZV}!Z|X39BMu}HTft&l@f7L;l2avyB;bZc;d-UIjl*HrYVIu1F1hwvL@>NG}XIy zf{5^SG6uD&<&8i+wuSVn`oDD3X;D|hq8Z+2o(_fb4r(dp>_>QVNnOKSh(sYo;#&dq zC$}yjFBjd>#{~2m5eb7bShHF8I?7y4G+>z^J+J-N`RvQI_kQavRk_8CH}0W{BxJnR zob@OlYFu46KFIP8_H=Hv?9J5Bxi@M;;6Kjk@=_EP3pKI?2lm}07_xh*-HtPHP-K3D zVUd^nC{5Np7*HsKQ3Y&#!7r048qElEVQUgjO$qD~7ksf47xc9a64&G$!;79J=ITfJ zqsE%wZ;GP6p?4R$$!ij!tCSHmC@pbg9IYh*Au{z*Kq`okBSE2dOZ*i#%?~onnb`$yQn|Ki;78tuKxY8^#Z}e5zPujK(Tu!JnhG*C{&3&=|IR3)Mh%qLoxZNLap8h#pw5M zj_ARnT$h-f%TZbZ!=vytfs-wFbZ@(eMR7Y(d zUDlELp)byD`33WA8j0Hu@I&<{^eLb~Wp2FOb##8H`T%7<;oAkH{HKI!uSOnCSs9@o zQdp1RF_CA}) zx=HLvBuN^SY#aNK_sK8FJV$YZuM79I0&stJ{&oqf#?4Qn>oXxOB%apLhx;sv!J-%P z$!o=BL0sa(6?z)lY%`kf0;hiXH)_9UusVk8I-eiH%0ZlQ78mLF2Z<>6rcqn!=xjC3 zv*_Ah{qou7lw~}AST`L}rBM<#+dLvw6K#Hn(#_S&_$b#$Y39?*u>P0Pi0Q5vugdDc zQoURW6%%r~VEfr6k`tjd4)z`ipO!t<+Xnf11R{XDgS|V6JJ1xO6NQYw2r3T!Gm(Ng zkz693nXw!PQUcVPkqJ(I2({kTkk)mS+zzz;h4(-Rm|t)xa^ zoGJ)xn$i_`1xx_fyR798oS5k7-3aLlBJMW8&!EPxp!zSNl?(0|Pj?+fb-Re;w2WcAU2qh4Fw$|dJr(MPdYtejAIMTAaaHcg zk^EJnr`ko9Cj8H;xb8la=c=)?!DEdbNNt+(k@s0ti^MGM8T8(pWK zzt0bSas(=A8kS!{Ev_c+L$`P`)MdQXg*E4!7ZB$?#A(8}8DCQNPvBdJ7F>^S4csO8 zR?(GDaBv$A1z~2^8}%aU(1*G3Ve`I~=&F6&8_Bd@?+^zc~tmge3$GC9Xo@AePf*>CClSa}IN=vue12!G7wr*_tgII*8!6lZmQ^g7m zj&q68|2{Ab%bbn5OSN>Gf?-h-ie5{Vx3E)HW{8v%HWh+<`)YVjncxpLD=n>nP2r%( zc#GKj!J2lc#+?2bPRRSrM;`;35QGejNJ6+|(z}5;Kw1`TJ%W})a|Ji%3gMGaNX=2# z*4_N}UYwHD9|UPbpnI<6z0!+W854sCxG#ZabcE*^>iAv2@nA0;<$s1__- z!^kroOu#ZH*}ZuW0mD!T4Ht(_-r|Zy2A9l9Rs1JW@AMvU#jvC5VpLi%-)XL1!-q%Q5gnO#ui3nYCrqUDDrOGL zi;bHdmB;qGp4Vm%%rgqFT#n4Mk|rVE1+#q(PfoibGcHB+c#6JHR|)RFa`}%U1+vwX z%;>fJ&cOvTdWQTWCoCS%T?=A@(n~QH4AOU+o7Un~(i!t8eXg6A*YZ(AxMEC#oe8c( z45|TRip=RXd|Ir^YbToxtjz4+MGPMe=5s|HVDaP!h)D2#v-^((g~tdiD-*M8?HzO0riMfGj<(tUSiH#$0tnOYNc>B{Ue)P z+oA=d`csr7q&#Lmw+^ISFn_j=-x<{-Qyw!vT8FzWWXxIoE>Qgtw$E$pRJlno*j!{z zU60f?<^$`oTz$xVnp|hiqw9I%;4YcAMt)HXkv-<0*5gP?zYKH82CNDO%;_8WWGwGn zKUAIgfnj9kS^SdhZ@!GMYEQP_yOX&itX}?s8&p2aK3-N6*t0Tu6~lw zADEBi7c4JV5t3&>i)urR`y}$eM^aZcByO%l;wU;;?okr%w$ckfRGRoHKe*{VTl%@E z(Pj{OyZh~lv`JdyC`&|4W&N3_PJj%mqOcAeK4h-JC+e)_8(m=TspFGeG0c3s4%cg9 z(#_B7__RUgGI%FSI?IW3J3jc9cd_nTugbV+@dD__v|5pwM}Eog*gx?*)5i~F$6Pd@ z`Z`u8m3~1|@xwP(Wv4hmen~RCQhvz~QY3!Pcm>kWE58)4RKhA=4*Y5?zkcilv2^yc ztA?7LMUgzMEKKI_ek&`z2+@yO(KW0S#s)QFi&^m$PnsNiuOt3%F1&Y}s1A_jYFClU zPt~^LgW@5>A8;m7f|bhH0KfU+Q~b_};Ld<*nbgwKNLdI)CAAO89{*XzyU-{6xM zDF#b#mVqc2CCXJOJe~@-#J`kEN2w1&BxeI81t?-7+c=Mv2Fic`H~6GcaZ>K+(FO5K zL7XKP7`e^-=o@^*OiC7%UZnl1=AtMwYM1+V5v{g~wnzrSaVN~F^?X9qRV#UPt+}$E zPl_H02GDOnfw{k)-_w0X9t7vRp3?saH_$d+A~?j7jD z>fx@E?jOTV#1u&Pt9TO&baIb$zXe|zk8yydtlkQbev+~KkstTU z_{i&l7RI7?N;evdQ3Q9b<<_X;5Y8e%OayQp1bCOjJq$2r>MUA@Q(45O!F^0a1rHB_qaap zX?@%?`?wzjL+jwzDf9oD3^(^(j)-4`l>_T%k?(pY>=uCQg|J(&$8`+-@Dlh*a_Jq5 z$ROP3WbS9puW}+1jStWXqk37U^!_{C6zz!R*84H$1{e5F>Fz_co`jyF1MzcY_(Z_s zXE8<3MtBcA@@04d)UY4!Qp;`Vi=<8u$_PtEYW!!>sXqoym;h&n41X7HLRiIrA{<`; z`ZxQycOw2d_$dTQHpNdMXfT}~kg+|Oj>rStsAet;d_Np67^`=M-2&jkmq3eR9tFq) zXSJ1{Ti$j!=3>^50o zI>Hq~I8I>wfB?M{!w)+=$bG7h`H)V@A=dE2<4dti+=#SK+Rbc|2+Mw(5y1pbNZ3@UD^G z&-cmd2*M%ot|l4&TA%Q_O3dv+kyuNJhnMS^l{C_B zaMsUlIv@M8ck$jA#B8?hDcdb4*cX1yy!Ec|D2EE2lj`bqaD@n#NV zJu>;X`-D@ah@XuAqdsnsozMfndYS&;@sv~@+48&+?1L4 zSq1j9KJbz5F)~=Wr{WE>O!%c*1@@bDTe!jc%|V1xcvi{?^KXm5`a#ymbihw4@qUnp zF<0SElJRTsBqfJiR%AbD$z&1?S@He84>x*K?IQFRI)Q#aM40#y!f1T`+VKb)q($kc zes96ujkq1MfIs4q#bXHXl5R*wDzUv=y1xP}ev~0}C4^vt2SBG4?j8*HHRP8r-D5>G z{D=4`pShthC&mLfDI8o7 zlv>DZs|UbG{K@IGzFjkbgLNO6Bp#{WIsUC`~7#Hv2F#amxfp;6CPXzXJCOB*>BBKMxlufT;g~_*{1o@H-5#+Aso= zLKy|_SU*XS;)o&pxM=<@}6w!$yYs*?U+gL^03vI_e{b5^v%E%i!&ge{{iR5R!d18l;}bIcruo*>m^uP+>t_+>iAS_c;H*>!o^gG`GyAx+fzmm|ziMUc zfxcUL4DM3t23^)q=D*=~x8ZsEb`Q@U^o=Agl2M+Q;0ELLdYPeJQ=)tF*fnLj?NP7g z4u$g@s5xIKv?^F~^-AaQ_nB*EaYCWC76FHK>wEg}|q`$B*S8gqO1jfj4jmcNZebE+O_j+!xLFxAB}&^ETYGX8HQB*VL|ByJq1UwtQ7h z)r$4^)YY!9$gilaFb98!=MKYqQ)T7-E0(WaUsW$RaLsC}$vec7~(vO4p>zQ-rNHok>-XlCzUA_m3gSIwzf zvHWX+jmsXWsNVS6m)rSY^dYtLSA2cL;#HL^*y0syD(9|RvuZ=tic0hI@AImNc^ekb zx&O6Cp5qT`JC5At;VU<;S-xZcUBmV2Rm;qV;)s#vznT2ijBu$_romZDV~ zYFRjJN*2O4)UL=Drzd0RlgRsn;+C{BBo9Q5ijlG z<^nC1u|(ORH9y7_3Px>*;U))s!~u6OHd@6$i$RH5@h`g9IE;~s^mSdsNJ7G--__f% zI^;J^`FGk+c+z{1>WNogX}^lfA={H=d|GP`$N3XZ*U7$=e+U?IEz~&w7$X1`@Cjfk z@DWgNQ)EUF5T9uZKIVYWIAAoQaGdMt_~A0q%$^MMJl#m zK92+vGn9Xu19l)3+2JS*avm-ioD0L<3I_fCm~sG)bHGUs*zbS~Fj|mE^eea7?ryWI z$#aO&6WrqGImyCri+irx@jW-N)vUUQ7*MRRi^;JIh^ev@#MGk!%S>ZX$6**;QFR=1 z0wWIRW5+1-Y zwN!Ae18%}?W95ICv4!f9@&U+bj0ymz;f!uTNlX7YAC{dI44GK0;A*?2#39oXMiIyw%QL#-+=@QId2?et7T$uCOS+7`)%aBmGzrPUTw!2 zzST}Uyv=^neT0#2vuFgcQ}r~W#sLE%Mg53#jD15EHsX>a&NW9IAXKm7+`v#n!U?Dv zCCCY=8sfU3KjAO{73mCPPbv5+=6DLejspP_9+_YlJksZYi|w={YaQ?*N1Wp}qKO>k ztGZ7_reV0iZqtdCHtQ0b9B``xK7t34C2~pejD1tV`SzpqNu_rDq-qr(^e3ISACRY! zT$4;Z+L6&{zr!EwRfB*r=@_ZW_+wDmGYUqPr7HNC{p|byW9)svqbjcc@wvPACY!Lp z1{MeqVIcwXj}Rch<_}>b0Ru#g5+ov;M1rD5j2JZ4P40%IH9?92Qg6T*15%4hDOf7J z8begReQ94F8!fM;EtRO)QcE?(w515y-{;Jo*}GET_x;`HN$#05XU?2CbLP*Td-t5l zUDgPid82gTdui_&_ z0VlYurCCq#Sd0=-af2jE4~!+4j>YBPftS~eo)jJgxOW~%Xk3%pt5rWTK@HDiZYlz0*G*l+lHLV~F zE(?RJEHzHs8iqe$wK&li1~*w6O+p{MU4GW;-M8e2V|fDFG+luCNlK17SoLL)>xl| z$>(KJU``@quSgiiC>NnQt&IIh;O9c6vR~&xgA(>StnTopGxn;W_f|5t4KSboGtq)w zA|vwvUc5>8gw@BHsNlx}pXFlgSqT?dWwRa-cGH5b`DS4^1h+Bv6G`7|@z3f<{f9&b zx!#gYvlFc@$SGp%H9?cpZ&fzG%9=6fqs!#%nTr<7*5_7OtSGJp4tQOyd3gkp|(`9SaED137rr@*WBI-{PiKQN^z*4VOpfCr& z5)?FrHI@*CXl0kc-wc(?E~5bEZ%KT=HCZhO&pLr$4na9jYX9;+YZki&jJgHUEvWdo zgiEY_-!1E{?b-N5LSx>RF!;#*U{Rs9rMnfH(`Db>3W?-=e(MFR&u;Ts z@Cp=`^ebR1aw1yc4}&|y;6rkog-?>=tZi9wK}gd&D=rHqSn*bC8ZHK-cSQ?|k6BEM zPg+b@u3_wipjio}6DnN|rg9}*T@ePKvSzf^7p)5JRKwuq z*1B*f-o5bsL<^p__hJ5*L*mXZ>(Tno(~SLGRD9=U%X-(KJLCh&8dNN`a@Rgf=)2I$ z{}g5KIvGX-;Z6$t-IWrL_TSxP6~6lfV@o9w`cIx#+}&^O-Ad7VIfs|FGxiHXUy914 zhRV?T5`iy6H_1I^E}%e-Etvj4S{68w+_-tgIagSDsZpUg70%!^Zb3OjC~|3 zyD!IDBkltq`Fww0wPkeo?F%alBRwa}qAp!768Bxi8)%WS9u>${asAdX7@GK0(xC8p z317CR?fadKeJ1etCouL$2}967Nw@@W$4yvg_qSP_i2K1v?oc0qmC9-Ifz~j%kFh@s zMh~I_IR`xGwP+qh+5M6Rnvk>JgQ!bxWF9<3yCy#W;X%>Q*vFzkey~haqUcps9*AcR{@URgH}OMPxhzN#(l!NQtGoM=HZ$ z2r9Q+k2G1Wf27Omj*SpVPVE~DG0O`68@Gnh9Kif9E8B>Em3{x{8f+Lufohj!AJynf z*|KW%pX~c;v`peRp=Gk~H>FxaZ-PyHC3tRXk!8{TO$RJVH}&JQNkR0O2Q!?6a~S)( zgu&<^65fybLBeRjY5_m)w1(f~C`*r8bUj{V8Q|ls(6pTYA3rT6!r>qYrN!2`!{7u< z?KSC)T^3Ah3K`ocVQAbhC*@t@`mGsj;oS|cAeYEeM;Uu~DAu3EG}R!|2` zNDbBHTb0%MEgIcr8Kw?_uE-WwTO(pKJ^#ub?Pf^yj3CP&tih6@3D@q0^#o zK+BSQ`B<8g^FTzt?8b(+k~cgs1jDg^Yg*qNh%<&=YZ!hq3<<_@*kW za5I?h5%}g->j10yP#8>;PXw5^V3#{6V6=RTO*97hE#RT^mQee0 zWly7m5Y0u4W^2BM-@4Vpf4|YfKeHwbKFio%lc&yFiW$2mDrh-x72bgg-VyknPOI=v zXhlxdJ3%AofL6EF_pNA*w3Q#^Shn(mD#iu{&mZ&BBRARx!46* zGTn9BQuVG2)}!@qj1Kt}wcEwm*MiUPu-2nf7+%Y>xaI1_H}0_-v2##X=yg60(9L=%20A27;OS-qJuz18C= zh>WX%%S?C+Kvp4O74UjNgFCAfcqia06K)Cst`>MyN>eHE-vS){qK@FLL?00FG3x(D zGx2?5+GN7d6p&2TmOyq~6CY%Y_A@C~!y9E3w;8+1a4cH^# z9|BGk@Y{gX1$++1s(3}>U&!#8FnyP<6bLwb=kgu##?5c4aeBa12>&rctAHUZHJmid ze}r(_gl&+CWF$O&Q?JAc7;;ek9A5+&ismqSN2wI>dBB3dnhJQoiPu%gN0m?k`tDtU zatNlc)@|rk4wH}>CLCFad$E8Czutr$U}`&L!cG$YjDWA=PJiGz6m{7X1l$g|P}u6Q zI3&u^F(%L*a;1CQKg*M_d%}G4rDe5{`aY5-GZ4GVYPZ zCe36B841QjGr0$Fn}E*)K48M}D&SrL7hc$a-I@!CoCIkB|LrKIW*mbZ$r7E6(&r- z@{JW0`MPX5dIzq z;4*=a16(a&lp7{0rq3nmlMgC_uk0hO&R z!ccRWFnuxT0v+M$V?fs$0fW}nXu|XnpR3D+@x5L)b6qeKbZQslF=6^pFQ&$X>7%=t z113!0+r=P{D%gEy=L^+w#)cks3tS7=KWvMS{?#cAj#!31hR0!Lg6%nvv7tbj%I|Nh zQzM=Odu5feJfMs*YCDu6w!fY?x+$amaqzsu`221Bw6&wx81@cu9RsNAl#%t0Iys^r zO3-y1gexV zw%Hj*eZ7)mi>xx1zN^L=b?>T$Ivk>17M}l|^;5BUzH84HPWjCcE}hIBP~dL^Ke(qz z5cutTjc+eprj!N04#zJK@F)V;^D2)&`Osm81m>WicDsXT>@q38xJ4fX;` z8^@<;Q+Jl#H%gB~GfAIxmEb3M4*IqDt=8`m6M*;fT-uw6{DNpskT)bhL`ZaHf-e8x z=xz+r!H#IRz%Lb_6mfu%?Iw-^$uGhk3WEtG+=*|&o%t4=@%~J0*S2zOI<38`Yd>_*L z@Ru+0mtL2@0%;5)ri%Phz!$^P4+8GTpUceGS-n}0L@)zsQh^{~7;TCtEG_moq5Kb# z?+eREWePQ2lvmIQr7SEx2I;C$+RKzQAOa!8;}2Kfd;h~}YgzHe@(qtxmRGM^^6;XK z8z0`7R#m>SI&Bs!EnT;9JTNvi4`Xr9Owe;XbEFxaY`6E3E?54 zbEmS;Z9M-6HB#s5t}y2juG*~vCN*{n7)6+vExGzmnt19V+FjBd#I@EhU=Px;PmWIq zjDf>pAK+907XkLMF=j>?62&3|ZGe-AFMgrE9ubj&3UYQ1u9<9{`lVW{RPXG#YjQ*c zDAeDe)Ccv7`5xvfhYJ{Z{8&HV6J;w;Qpo{t<$RCgDZmRkYcDR5Iw*On% zNYQd5`aL)Ut~8dvM}Fz&d#vIpBK1>|3HUJdWIX#Geu!|LIwG%EUDJF|gc7b!Q+mSL zq>4$ZfJtZJpmz5+adx*<8MOdqO6GeW;Bp}n%JuycE{N3*VhT@Wa5c@npCRrY>w?!7 zip@ijUkc%KseHy3e0f1m>EY2Q1&*55B_ibKL={2af2EEeRRk|ru1sGrcKUQIZ?PaQDOmzE&YP7^_y5J(!f3BG zp*0Ue+MJYTqoP-h8TyU>FgEwX`9Y=eQm^{Ll78~SL!NiwEGMBk9?qqjSri%_TOY4V zA9vKbaGg!3-%*{ zCr$TdfuMb$exm&{1$wJ5wO@tX#5kzV1Gjt$2!>Gt|3W7btCh-}4)|pmRYlknL{?Fq zR1RelQ6?2-(v58&z-l+N8))qQ zwK_Yd!rNy`=sl;Z)K250Un6`&7}`ESDl>+iM)<4&QNa;o@o9DTbg39R@}O``2u*Rd z9YGF53i^g}UOKH#Ta*DKBR5UO@FliBOx$o5+((o5IM`@RtzX0(#FF}ji;uoBKKu}l zN7DaW9Xm&=Bdq+_r)0khwWOmi7a2C{Mz{ghXVm?-decy9qY`TN2mg(T_GDv`zK-Df zyw`#)_1WL-7h}SQ>KJm$@}W9$?6>sN*EPJCHhieg7Gj~}EzMl1Cf8Hm-5)L*(}ycHw<`q5YA(gZLdiT+4aa+N+J_zfs4pY}JDwxQXkFciStF9qVtuVv^L^ zkH|c7T$T6QH}X!)ycfIe_lC+L8i2RXK45hJMjbs)Rf(_Zc3mheSA{oYHTLKizfu1f zDHf^BbmLH|5^K-Q@EX5bq9oaVSZPe|Q$L>9{M)*w26k(4Bg^qOE~{w+>@8!;@&G)A z$0MLL;+PaS{eyrZIq^NkUQs`fc z5^H~3M;s`kq2yH5y!S&Y3GR$=v>%3hw*>zK<7-;C*mJfoWK{z885=%PjLi|OgJEo3fwh=DUptQ=(PN%4K0mLHzky&P$2D(aDKCaZpqQ? z_Ify%Jk-oqo9Ig8jX$chC*51TUqzh1!H4xNK5`n`w`TzbNe0}`PSZqh4Eqyi@IwF9 z>>6wfZukFwb`4Dx6efIS63g=Mj<3OtOp#S?hbbYZfU=CH7>zq zgw@5(Ly(#F#H|%;y|L?p+Nao#KJjODo=v&e_~h$dO;il5LR(+s&ZLHVq zbJIe-XxOsgfQmbo(yy+H8eJ_7M*5fPSPei#7un*NvChESh%PEi(!jz8Z-!U>Kn2#U z9T(v!X~6j9MRmN=WBd^*XR&v!IuLmA>z48)kCF6OHGk0w@7jnS=!}Z;!6B-02VP{2 z-T?3@@jv7jnE4Ss#%q5?IE)1Dp0@fb`hcU%cW5^(>D)eTPY;a41db#CA^{P3 zKY9Xz4*TI~jpE&)i+MZ^?#nl?BX}&+6AS`(M2Lj0g}3y*{cx1!HGbKT^(L|2ZcnXW zXiu+?w`Uj={)XL|*Sl6(7(UDKLd*ZAPKn=aMzcYqdB7QJ_<}xsIT*wd(0K}W5j=0~ z_?vp)655LgXf~Ad4V?@$FM$KWEzDJj=s$eE3c$VNQrmKxuZWcplJ-&v9p-{}MCj?p zOX{OhNW#-2CA%;27XJ>nvDMs2&CQsTj1|6dFJe(@HHLkqj#?zJ@LqflM|W8^0DhFmV;369 z?1kt_QyVj%+ThOH%hI#Yp$#I0Hryjt5G)*!@-~o3Qx}0P1|g02 z;DE8^OLe?)?JG6UZP|j7YEBXOcKpTxbzT&D4FTIo%`_1hy9U&PDW$}X_u>P*DHYAh z_A-h*iK*LOh?${zslD8Y_`CXKPBo2qRLX@oq=T#v0`x$6m=9w##r{sv4Ir z;A7jV?Gsr}OAs`r%!hnE9~ox> z6d)#90SXn?BfK$OH2Xl1n(4#x8)OOP@ClECiJ(gd4cv_)oC1U~!w)jYo;=%S3;}ky zl)G^+!~pQZ5FFX_SuyUF_@i{rvfyWV{+jVMx`-{0hy^)URDA+EoaUPr3!9l<1FUS{Ww(RQwK&Os}1l- z6LA<`j87#9<%`Wx5sh;=b9Imhaq*bs6?MYFvC;UoIukw>U;kQNF(kG*o|QoJb-UsX z*H!iAn8v`TEEV?9pUE&h-nKUy8?Iv7ZKU#<<@Qc#%1~OP(Q#G1>5h_}d3OKKa(jSR z(Qd9b+b7xAXHK&Fai=xIvvZGq&8|uI??4$2{RMcL{tSEnw|N`@CT9zJdX+Pnx7^-% zH1`@jE#A;dQHk=pqx`;uk(GHn?B^RMsUH2glW;(8?=`j!!sn>BZtZh5nLXz22;G9G zDtkg^AMLzs8O8^Lc$oDY6M~4lTWs7LR1;uZ>Y?qE)Gm5lHMRxS@k8NTI9RDa^C^~z z!Oo+v2i02?ttxNF)qW#d(H@N{5z(NVurFMay?|VtDcTI&x)p8A&?P%cm8QH`BCxJ& z@JOj>DbVjQo3>18HLyWX8CqQ*&wS=~^6T}+4x2V@j?WD4U{9QmL7lga!5h9(AaZIvf)29*{+S(&mgRDdWb5QVA~0Ax!Qx4UnV@fx3|1n z$8IlRb`QdXXTa~ccV$v!H)d~j7t+AzWOvd$W-ocQgTXHCM?kln=mgDjDksV~MVY=# zSa|`{?Pnl%YJDkr{KYBBQnq~Me5LS_r49!7_8F_*`fVK+7bgloMjKL$wsefljFe^@ z0-|EAc%B8|?40q#nzz^?@bVKMRE$$2oJnl4MZm~#oTB!@9@|7-fbs(6cBlxFdjsYy zOs#DxSC8avQ&b{^_v!#9w#zRgHZ|92J0?L`gRh+(%j~0>j2+5Mx;B8y>9DO4kGo!K zIaQ8UE)P|n%Mj`iPXlJ2kMfA#w=G!VgdgRzDUcFVVzn_<)#kE-A zE{v$FrW*d?6ElI6_fPjV*b|Mkep%Pj6A|71iL@G`of9H&EArUM_b0^`GY zEoFLHXimo*f*zu52f6qsY1ix6Rt7PggTJkVwVpB_aA>o!tM71VE2d|Gv9pjKz_u_i z?XPHqLl0!djcRUYLhwA{DDVZw*;Hdfloqdl14ZpRv_(BDcX8nlWz_Z=jW*W2kll=) z$=!uJ%^Q3xjXQeDN4S<38GpX4qC?-!ID}z1xsCRwQyy>>w%SEJK=0bMa5+cX;Q#xS zKzh)sF4}cch5lw7pFH*Udn=QETL;F0mC46k*zn`Uf~}DDCACS}HAT&@+*Z`QqZM1x zBICwrt)f62S>y=OVw;z+o2f~t(t!Y=H&ZuNZJ`&NOrcsRA9)m4n&$z}4`qxGqqXN& zLXirlVl20wU;}LnS}>T=axb<84CiGf=$?Gar@;>Ur5UjpUi4M+tB!%syKQDX#l9Kq zqMbIqCpBIlqCJgnyV0p7+Z3m<0ekjIUfR;vBSa?I2cGI(I2b9Ty*ds-%JBZA%y`ME z&Aye$n#{qjmeIh$IYcyOIYdLI7&<(Z)tx-ZR2NGC9i5>N9b!7$;Ax#zQM=`qpUNA_ zL$w((Uih#_s9_fE>j?7M-FRTAHgOaWtb)ji@XrnnnVev5L$xtFubcwPAbTqbfWAEh zvIt4GDXEP1vqyl7B%Cm8ark0KLk266=lCD;=)kTXqMs%@1$Ghm{5n9U3vXtG-MxjfxeTaTEf2q46iLIHJ84UV5f%D)6`xJG?0L4;_}&PuAo0OWM4?|D3}Si1;0PXqifCvhlC-sVU2@kav)1~htj+kx z2yLEL)LqYFjaehLl$FJsmZHAB!7~&h2<+dq@S(F-DNEZOXI`R$aII9e4emSoSh(DJz#Q=*B}K7D%>+ z+Ebr_wiKf+H@dZ%`V}0Hzx56xOR-D4vXw7z{|fgnLFjq#Bc^112&FvB`xG%D(AUog zOR)N~x=-Ka3m*muKU$@Qz}tyO<^We5MG`;5S1Rm7=;#3tNvS@1N=8}OUZSucHk`)C zCW?5v7tcB!@y0c`7Mpo0?A$AX&b_1sk^J%u4TF`RsVzX2+3ozV#8^H`8z3?N+tjD)lxJVeWvx_vXDI^k;!O6rJGunmh$z^Ns^0myA1Mjf894d}l20gSp zBU!QIJVi|<*gV%8q!q%WuQd;ZF(S?*EFl8IU%O~r8m&DZ)lU(Py>-eZW8)Ytd;EUt z2jUcp}nEg4E&7X10m+>)O(*2iMSM>fK$FbuGgx_5tSZjCS_Ag)~?tB={U?_yi) zzJBvrSPJih3IAmFx__Q2n)n;L*NZiYVrx<#ZPwKydbGR!(FNTQ%w0SGlDj#{mZCSe z(d?4%?NIg;4<3s%?0j9v^cG9R*E%`S{z+piVq8xC{Em+xFb}m zEf#gS0>=@RaJN1)t>s79PTYj=9@+e>6759oimz=r}E9k%x{T z!#hzP#NdG_fg;6H6DS`~X!I!NLB}WJ$uohP$op#nCWPMrx-1Mk$HKBu0?qQcNd zmplb|?wnFU=Pp9^Zs5)HD6|Pv^b&eV&F+D$WSrf264n*|plYrL%2MM456)`tGHjFh z9%1n$ZN^NzEq!>9b`ah&bMuY2pL7^rMJLEPz(E1@++?Ts0sIvCrAb;{a)9qTW%bQh)(G&STwmn4d%@D666ihOOc zdNWlbV``x3(fCr1UsBJ6TQ6{7s*LtC{BoMEFug^$m?-(hB{emApRqb!n=wq7LG%I0 zus_;Zwmc%yIG(O0CuWE;VHFN35V)`khZuR&w2?_es=g(w@mp|4y~8$AA9CPZvUAD_O|2L!W@=+~XTB&@ChlPFED>;e z7_L&lvW-L+5V)K$x>fB#FbKA#0cA224&#>3PwkFk{B3ysmK+Em-HYNKPeHhB&?bmW&u+!OJQxMX*P zjNOW-MZ)q>GRENy%{@m70^x>Tv`TXbxZwgtqmEx*;M~TI8QQ#2K7d6gR-sA?cs!Op zJD{XGzZ#wPn-Bl{bZFEPFWFsgvk?7EZTNl@w&f#c);ML6@iz!Hs!tF|LNsUifH7{4 z#>0N`ui-(V(r_6OLC69JV)i?xCRO&ilyf+68 zI4@96aZg3oWn;gKGZA12^PsGeW4@kCef zEx0uT=Mi_Js|u$hEkn|gjmAq}ZGt{>pU70h3LN_u+^KKD^$A?6xKm{V0+s>;=cYR8 zl6TbaHnnBU$kfJ;cITM+A%a8@6d8ACV%)m@#+FPij*1eiPUGjl*B&=wvb0piVdQ3M z@plyAGjEc<0)IvLQ$_j_z{O$dTEHb?Y5YWxessyw1wB5kr{6qAQQRHkx6gPbOS@(I zPXO`@)zfvVzKFjB zk%n0Od-V#Du0kHaNCxBJcWt9#Ms%4nDLC3OFOlAl^3}ks5#^6um;X*E&D)^-^1Ac~ zDBla5Ta-VC^m(MEe1Bv3;VN~BAfQM;HtNxIvw&?B(uGz5TN2V$Vd-3?TanHe^tS`% zm#I|Sy6e(4pg#kgXpn8^1J@Cth4u{KP6~!6L-`!AeRy5^57(tXL;0(~i3;p88$D(e zozq6?2`~z>o>;R2`)s7CMR6kSLmJk@ydn)+`n4j$1VMLTUWxQ&q#Yu?89!4(GL&vZ znj5*u{}Ix$R=#e33kZ*eu>S_>#IW=L(&X1>nU01z(V4Gzf1u%bkR4`d7(77dTr@->DxkS4rup;((q#s zSi`S#hLDj76=`_*8B!LOejaJE0hxacY5axKze4&v(!yr6PccIvDQ!UON7@mVh6bF} z7SQAM71TWph*T57)96$B`J?Rf2rtr=Vd+AoTf*q?1k5kf1|sf5{sAC_KoL(MeG=&c zvr8gcO=`?DW=OG!SFx`miNv^#_yy8rWMU$V_#{+-t2p8^@~f@q4V!XRb?GaNjiDZFH|d7}9786tPo$k_TqP}l zA`Lmr%j7r26H1%&)R6Qr1i&F#*QFO-moB<4U521r`M|ZAEgtevD4zoqTXpv;JJP*a8WPPGJ4Yjr zU#7~PiPxnw5tR#F9DQH}<|#~+&YMC69B{4-rMZGzXj{Jip8? zaK0hasWnlzckgf?!{|M<8q+3lR8}|PI^ULhxVGtlW0flVLLRuAR2$<4~v@p8iSj|)Vkd71iyOF*cM*lNR8A!@` zWB4xt5~4uR{}t(KvVS3f3sbLonJsdS0l|4-8qESOOjOg?BQ3hfbqmr}NDBd74xs5s^d(kjx4CjE$ENE5?!k)De5 z8Yr{MoQOuuqr!BV4IHr$>+UJ!9})S>Mf>IQI0A*|20-r?4AH-HThT@NqQH~bDVzz* z$5culG32Ni@gm+SqrBQC=no=~UuJ_wp#O7YfoKu@^$&sA4}>s^5nmvE2u*^FUmfnZ-)v$CgT!IuLZSvQd`|m&$ z1JPtkJZdP?XOR{&*Qj`;2arw>`8jYKO#%ud8ile8y+{ii7zGV1T#vMv7e)n;ZbVub z?I>t7pOnQlg#I73ABZ@KK)MI%M5LtvA0zEUTC{i+T9Z!#i}YwWV1AiKHaZ#kB!Ccb zG?wrDCZr|(I;7i0J~>nxjsD2*0zz2%=oX}V!qS*1@-a_@@_!GQU!p?HWceq7NHsMy z#xw;W%=|IakUxNAhRC0fxH;57bOC=(8H2@VQ92L-K~M#lUnZw90puS7!t66P1}a>1 z4C#G>p8A_#qQW=e#$^of^8jAsh9 zrFgaXyF%?vhjHr)CC>Q4N^MhQ>82`##kzOr9%PMtUt4NM z4>NIy8n$rV#_CX2n;u~ES8~t}_PNV%UZG~;7_vqj5(sEQ|Vw*Z- z>Z6bH(uz$F$qx0w zyfMJ}RSe6MFwAv~g#EC53AZseR>DUR>Q%z9wm1PR8L)H-7l@!?G_5Kncnp#m6^zA8 z7)+-~xHGIUDwrzqsDL{hBtCr>Y}=2wqk_f;i%ggBX^W?A0Lz*TCS-S6Qri=)Kx1}H zL6VWZ*kWXF!7vd_?GSE`gfaf+3RsQ9q%YwFi$?Wf@;C7~enADY#TwKiRjr{b@Dkf&^-4dn zhP+ty10omeVC?JW3p|TJj-6S5l5NmOJ785#-U zzAy1LmR3dvEKQ7Tw=^{JkmdMvWDmAdvMda|S-|?pKC1;Ip;AfYc3M7Q-4JezDB#Yw z1a(6=*?KpG2+=?Y*#HVm_OvVuqn7lecH_(?!n8j&YA+H{6J4}Rcuo`;U1<$JTKwg- zI@*sz1xW+7cS!h@CB*2fR>ic?zaVJFKxjE_j|rgvrPO0O!wNvsP=Slq5E=ufl0G)o zqK`$FN&47UYc$1z=Zm7^*e>h?B-|_F$gX08<%P<_0wE8Nu_0lZ^dT!lx~*-EbE5OQsX@@w!bAO(?c}Ku$7iA}&wWjHbm*pIR_IuoT0Vjw&5aO7G(MPhd=Y&<* z(*F4N%5^Oh(u&0~dYnU-U@;-A*SLZMiuK@)FF`m>f( z<7p7$U4c(TSDuh?qtzXW?N$R4_oIHPqNG!nT9W!KOHM*7Webw7TGME<3w~%t16P`y_OJZm#shq zY0!|lzGL&+779whW*o6%45UMIpPRzzEFBg9MM#?Nv)uKkmspI_(aJ_igKm<3!P75V z70-kw&kLHFg_e8&nU&V_#LNI(;Yk{3D^_koXQDM<%8c_?%Vs$(rn5Yj8fUGxrr}w% zSy53tu36BK+!@WMp|Qi_<8Myb7HbaFC7I5FaB^v#i`HEch3BSQ zhB+4%%T2~y2>rFBL5o*P_*7U~2q71wdGu^ATQ+aB)v|dWONe=eR%P=boUCk~KaA!~ z7)@Uo4JwmE&g-=3y>U_qwBH+6fw$Ny>_rQtq+T$UUe573a%hK)59CArow>&HIiCqZ zC4Ck&CxyuJFvTXcl7+e^%lSWxx&Zw_R~Ckx?BlE|OX{qBR(E8f#jtaeK_?LoyD&Y47J;5Ie z`~<+5GdLfDKN0xRfd7c`&od~2LtS3+Fu>SYay-FT1fGN#6nMb-5R%h7%(DVcPw)tV zPX!FV98YisQ{*Vf_cKL2Pv|VaEi7X{Qzi&a;1Gn9>JJ z(tkgFtfct_{s3TTfYX4vw%&y4`y&mlAUu70q@fIls{!v5a4X26&Bt4*?FCu&WX<7!wVBBNVY;z^4IsnJ|4C6wxbS@Q#3% zh@L(PigXAVd?Hh+|0x44i}Z<%KETB$OrQ8ft`~4B;3ff=0d5yCgouQI#D~7=q0?Co zUj%$cz*jLPK`6r0XE+WBLa^I`{wKrW2^Zih0i)%PHUS?4d_cfxm7_<%mjR>IRF*!a zaa<5E_&HD^$5&%22VV|D3sItC`Z6Y}0(c6iK%c!twVFiq$x9Uer~rNL60MpreTfnc zI>L`X3%JCD=>wB!&=H0=Rnh}TTeXA(mS1$+Q7 zR7_0i^N1m61&1#HZZhE{1{jqPo<4~fa!A1GfKi6y3jmAClE81sMS-t@!J|BAbpH7R zeab=w=u-z7$soA}@EU>d2V7;sDIUO$0w$U^0iOa4!HExj(ctV6a3A2)0=^0ujUbv- z2r!iTpC^zS8Yf`1c4)qU&jVg>!t|BGP``j7%urNLW$EjLp@#(A1^9%3aUXiwgz5di zjDkS#`iB*n_?bFo)QAKm8`f^Z^g@4_U`p@u=|d2zY&N7G)-PZc!xVoU4|*EP99{#s z*o5i5JRNuwer^Ep0RguHJ}>5fdiOs3vYA2e-CYSLoQVRiDifyn>nF8B?Opl4r^8h|A-~zxG z1dLYF{6H1ZtML(u0)_x1Ku7o+3ju?U!_WwQ1IXdCfZGU0|I=&m5u##x1wKMlOs~I3 zh>91k2YkUSybw(2<3M6Wue|AF0uILk7Mjb4Fe6c(<9&c32!|oW$T9(g=SaO;B$|-G zA17)DykEdwfbqxi5Nu?xfKLEEFW{4aFAI18vzpU{>20*zBj9wv5QO+FIs_Pk5Ik_X)UPMypt2JgjTC+7@5l+5OSv=q5K>e}-Wk@sJhDO*<#uH7(+%R7@)w zMpgj7Zn-JdxI3Utjo5t=TMYPq?6pshxTzH-?lhOqm zD9!;_SoL7Arq@_ruT34crVs7%p&-6pV54?+ZyFa-<-v6MHy*oU-+=LRP)Vn}v&eJ2 zefF%m#@jC-c13NIk+oSXFs?kMozvrMqa!o2KWFNypqh(cQ#Zn0RS8^z3;|pMIFbL> zw1b@nE;_GUiPLl7)a=67HTttJAFNxr6TkKi79npa=*w^)4Ie6fDR>IV?tyVXA3P0z zdXItT6!KC)QdH7~YfVZYJ>ns@s4yEAt{!{?J_umKDfqOgdDiub43k1Ycr1(&9 z77FgeeKzjpR#2u_l4yc`ZG{Nro(z@q#w#MeBMtiW%LlAqG7u!aie zq~8?7FUblxsqjb#DFuvi&sFdwbfJDegMWHdj5!({*& zAcS&&F78|C;(&K^eD~n_u<~&EKX^KGN$^t$aoftJ@Bsx+`@XjZd*Jl#&kg(Fk4-p+ zvgN%sxZiZ9#RBtvccpmEr7&>Jk5Src4eXTQ$(1{Vy0>Ok4alu^I z^=llokRAv!cjiPE3*WGD-g9U*oI`)3fqMs?fm)^_KUQx@^x@~DER`hpuZu16SB!I0 zrDRm7jJJ#=_rIK2M0m1rvIDYm2y{Zaa%q7J7mOY^G*}}?&&uS8+`|iP5n>cI@=??% zMp5VBE7H}A4#xD*tiTn{claZ3vKdm{OtLhKXSgub-2K;nwR}lLH z{wJVDwSFS*P$8)@j7b4}xj0^|Qy(BVYWj2V#tb)yaK@$T>&`%fzvCJt8Ztbxjllh; z6K%rnxm$(nbNIJt7v0{l{8R2kA=K~RG!Q57|NC(JCcWF3aK;|1W6-tIpbHytC zG>y@CgIAbNtPV8hD&e&KG>tbJYh<#u$xGc&H$(jP$ZDE5sp)|_^|ToD^w2}@Z`Y7# z8G;Glf_%_=MZf6glw~SC0m#$(_s}75FoNc&vJeUolg=>ao^Pv+&qTTE>5z)LgS6F$ z|MSp{#f6eH*0SL8!HZNW&2g}v74=gv87Hw+IOIPG>uH699)~vwA0T(bK|01qW+Lxs zwcY`DiR2PV_$?-f7nt%YjP9qj9OI3rwSV4_08@|ix5IH09LAFn!g;dK+sP&y?`_2o zragx3``Xi^JY@JJV%}cU{}sW;;IFW6`H$~wa~7jJJ{40R=ELAVVn&mG%J-Opan)H1 zudcK*z4bO$6d(LrDy+i)DEH{<_P3e>_}@3;w!ybfGW$9kJ(#^c7@Q8rA*()u+dU5s z*BM?duMR5N9;RgVU^T^Y!m9R&+!;G*Az}%8?u54{dqYiqJ^bh--R3?F0u0Nt+WLCx z2)6kv=JFu|MDq$LnpW2ib|&x@Xnbrz@dY(kZ|WtS!+3q0Hd$w#wZ&My9q;7Ux|bZR zO^nQF`y9*21*X=18JSVP0%zdxk6c&$iW^Hnd|rnwJ@0u|4R{FlD*b@t%sP}f;Ak_| zS@$w`T@#BmHc++<+(#2GuiMsG_p^ec*Io+_?pc9H;Vr$)XUu5PChB!xy@@Uxya>`1 z6e+=essJ$dQ?`@1CsT23nGU3Ehf2^ym_sLE+ETUQu4Xa5rP^9Q8(wxYUQQ#^fIrnW zD2uI?o$lCL*=um8tyKZ>fqI4zUzF8pKUNgBzj9GO?3%@wQ?bv&{JaEdba(BDB?nh7 zL0>I_m%cf0<5T?dLF~Qy^L7mO*MG%#R5sIpB}`yJaIiMx)wJ3qx~ zxi-77H&43aro9(60{T7!;cTRPY>9beFywkEpJ<7Oc;$7lK5{NM2agxNyv@P$)GsKU zK%M2?$ZUHSsO{bt)DFUT9#`AVj-?I$AgMlrhJgNyuP|Pje-BKZ_bY^jVAZ^9ekC^f zw_xW914D&Hd+_~z?QP4_YLg-}FwE|!Cl$4RIClNmdipQj=3co#&0QJs^ITG!|ASi( z?ux`h@)PWro-r+}eg@oxEik*Q_E(SA@bT9XY^4f)9apcyf(L7hsUcVUMK|`qHE)5D z+p4XYv;p&i3Lk?m-09JZj6M$AtxE24ZY}FIUTf7JO-jwiE}xn!*Homrr~Za>%+XNJ zawrd;r!E-Fe*n)v8;rUiXn#^NjC-He;$teFe%Jm;!;4s;Kbq|BY_Q*J?0#0eNx5Kr z@+_PMZ7`w@xK+w9RvX$^O1`nYOrw_a9KVj9zG_V~mgY^e~ zUxV?`h&gFA@Z{kfK0xgojO1O~ePFy}mlhAkukX?x1jos{wc}LVZn(GJU<`YX=goRf zdrB{ZzxJr+TzmOXkFz0wqv=TrO@Yh5Ydmb@TW>2p`9--OpFL}S@<+5SlOB&E~0St+jj&!5)tZF|ChnVY6#*ao&C zVh7xt7BGA}PpdHqJ#{BQC>-!|f8qjeI%9u?e2)7o;C7K0l4aO=)0d&WfN#yZ?7rqn zaB_+C1eo zL==GM*ok#i(aNM)FK|EIK1n$OSN{*0g0iaYKd{koi&wbnqloTRZ@u4*Fc1Hz`|Qn{ zRUZu>q`jm5(dTY&xx%u$gIBo0JWo>;HpZQ7s17X6WiLyREzT^rN!O*U_9mL<2M=X;;*IU-h;FJp{#o`oRgS$vx4sYoXD~Oe8u5O& z-u@1seOLV~eb%b>_q*%fKXf_!$>3L6EEvfASc$30R+MzT;{wB~yYK0@l?3C1=e5a8 zgH_zjyMpWaC@5FbsU@Zcg2l8mgmbi>f6Lp8r>vLYt#FURWS)`RfuHEg;x!UY?9hhG zb@@B_!`HIlr!#4H@84j0l1F+{b{`(h)|>JaJmn=}ZT>}pw|H$tE*#|NBK!a%E`8LY#iOx6V1o%&9%k1PpWL4WO? zURoimb-{;sJa*aOgURq(U*+%%5_u=Xt;p(=YXLsS$cSKFA^hHJ>nZwB7!HPWtr&Y%V^pVh%|Saz zS_6!6d$j+$VSv2KQCZVvERTc0`!R5TM2}(Hi&%u_&<3zHOhjKpz4nHo@K!#7PTIYiRSxO33*xg%}_i z(AFN{u?u81xMK&$=DOe?^NW1-+upjv2rL^j#iBZZpGE zk~&~~{))DA!YB3IBlTXEini5s{u#5$Q~k6`(!&tc_o}wq_Pe)?gRg3yN<3W@cEfco zJ;66DR0sUK;_2CSHkJYhO#!4GdO*j6_W9gSHYPW~#y0GM-&~yD($LBpR5xe!F!i3F zvDkZB6($aH&e8_X*KMQCoC1E)+p)$NX$Q1P6T8*TK&WMFS#0@(vVfA$cYGb}fU)6# zHg4|6pY80zD^oD>q7rWppJ}Z~5q|Eg&pD$#*oqlB0}qk|;5plPX+q_*woRvUM8s7+0SY8x%&bey4Y z@%r+*n6u$63g0-`UYod#$Fy0Q?8vEIbz7Rgr4L7C!83ZBkH+!Y+Sr9P`f;QE$6EaC zF!pU7Y8xJy8@Jbi{RF{25$v0=PcqrVGzMWPKh~z`$Nxg6*UNRV2T_u-X77aJmj%yl z!eJ#kWbgpiZfBrAbZQc3TI881?w@ckV#?uA6AT-1YUTv3Yv*wsa^OS_up4&@Q4$Lr z!LfkjaF0VeuD%o-wfae5{v?jvmM|3vc-J&{HaG*K(@qlPFwtzMqZRb>u554#>QyC_(JB+6uGH9ck*l6vYA{;nhSj0Eb-r@gmf^r z(Uyc??Ke7J)1HLi?r}fW7L@b$`1UIOIHp^H_O{d`Xc0wyz@q}TTWWFkadqI4BoEG* zSrd=wfZ6si+Df`HYgP84J8-IksP33GL->y1J}%@NKh;)EKVe#JuqyCCL=Q-#!^qZ< z_fp{@J+<=%TZEB&M4J}VmL0$|gswL7qTQ^^cn1#_BZKOS=VlPH)q(q0eg%o`x|L3OQVP zdk4{VgT*}VO8{FKoXIW=_WzlVUUisqt8WK_RV=WV(JB+Ji@c7(8nO>jFhvwREP6Zu zVcW&%N9JP7w?TD&(m43t9&cFHr9wZIGIMd#~{gR6V>_2hQ0X)WDq>asC-U zFDPoBXhuu+|9qUgDQMq7g*%Vi639)j#o%f`Dn^*I*EL^8C#oc6;w?=o^k&V`C@DJt z4}a9_`!EL_!*f%Ok$hBJFg7QJoQ8L^%jQye`emwYS@6sHpA@_z7{ zDR2M%T;99>7kLx7yv8MLvZ7>D%0Mk=ld~^)cx3`baZLs^baQSA-b70)#r#dZ)W*I zrkp)Fd@2apfuK#`UBcLy+6g#x5@$~SIujOKymY8}(SmKMA-#^a1EO_D(V|2InBfVVjKs>eQ z*;QXVB8`=X&VepsQYqE9^iy8n41*>bmWUa#2Ej3WzILSvy=;H(oV^_RvCo}TYiKTj z7LO1f4|hjsSU-{zfa80%wLB?6#^~M-+-A(Wq-_e7legK(Ij)Vx3U>Q(ZEZ}s{+q9A zvY({Gk--yGm+{Nv+MT*Qnu-!<;%e?1A+7~Y=i!tSg&wTBr$1$KwhIbt!}9mr`6pGLjR#TFqG=;^*T$1=3VQ5 zi_eFV zzL&vV5YTwjmhg!<8<^eJ!oJo*slWq|2q5rxT>nG z?|tr%!@YP_)GHv8Tm=yn0TuNsC>KOUAtS}cF;Y-8Ye>ncmr}1fQ#{2>AckQ$HJ=a_B`^S4eAGmA(T6?Xv z*Is*{ba)OE*o}N_%*On;MD!N9U zNNR-dd=ViN^Y%y3Qr7|)Zh7kk{HB744c|sY-d1Zh5s|k~b5O@y?)=n!@BoYTb?U`| zPTC}})Ggbd5%?$l#4q$Y6QXn*FGHMq58@*Kza4rWJ8Swt|7`L;LUgkkxH)0RkPOrn zGQAi?z~LTo5x=-ybKqqNa=7>Rd^=H=b7GkBc?*(G{pe5KgeSuf5yA7{Rd=lqe%OHl zf3ugB!VL13res)Kct>KlxRA)XqLqV=!9;@|ac z^?BzRdj$XO>vl&f?MN6&eX z7e1$kZ&RW%d4y?^jLz%4-it4QRm%G@u_LXk7WZl;fof)h-!W=;CRl+jz|;)1SHSNG z9jUvY%w@<%)0vC+_h-GyLYpYCcdME=X)x@?7DW#&o)N8OUOdwfouzSSgL}UMbJt zh6gDy5PAEr84}TWVs2H#jsnnBFTYgI%@-RA93hF6ER9}vsA+e?oe<};nXDQ4K(YXy@Y#Xk4swVb-{ ziSAt*bCkY;hiN`M$VrBcem656eKEPAXLZh9%X9xXY7}> z*xAFt@=pS=|9Oz$E%faD*}h(YFYj8sqVVXy!tKs-J`|3VlVF{ z(aUL*3h`?YVKx8qEd<=YeuBsS2HyMc9$1A-4QY%_+kaa=Vva$!N>5WbIRX? z^xyc_-`HpPzYctx?&cl5ZX=5c3*qqn=S?TJFWm~s zM0v^fErQ}aO{4NPtz9%fVljAa^hwh8PUGPgXelH02jLgKou;d0!e0An+lp7*@ZrLX z_|-^{m8IT^4k7XuctVtT+4{wKeXQ2WHeLe_O7o8`z~#6;aNr+ zKl(Sz7>m7_|CN%}e8~I2+``k}N9q_~`aT#tN2!Ft7&V+f6qn}aKcxz3{H^!l`dq>P z`M!N7wfX~6C-}-gfUJvr{}MgH4naml@uPpRC)$A^!pkFj;WO|7tTb?0RAd@J*E4WErKKU9SFkNWYlF>poN+9_}UNcaZ@D8 zS{k*V=gecOJ$(S?W)w6%oPGT0hxY8@rFin;G0-76QT~wXdHm-;vL^DrV%>)CK@7W( z|L>2iBL?dW28l}0fyi1u_mB9rWve8@A%Cgp2>2AzdZY*h-}#k9Em(JA5~n`N}`pr}?cA0L}?&Z=;w*rP3b&cHu8dmJ@o2 zH<$iamjQ- zSekkkmn_c-OE2aRePmDIcP-PS{PkgF*mxP2Z2Lr5`kAowi(%>4gK0<;T0xQ%m&Etp z&1pZKv@|YR;c_r75Rk+}%dO5}+9)3uObfs|A(%GGX9m+o`TU#G@EqWULE|zAuvUbn zH-)7i!ts(5$dh59tviC{Mu+=?X#rS|hNaP#Rs)1SM+{`Bx%IbU6~aVh?ZcTDH|jX3 zfid~SXE{{*3d)mEeg?d zHV+gr1qkXS0#F-!h;YjeHVSO`XGqLe$Ji*8t2mRk7NiMZt*n1ISl=Mv1;*k^sNdoE zAO#Wd3Xk4qOPKPQncQGf1WqZTYH;*{8-yT+89+uu5mJWoa z|BbORjmS$g#N)UBELcJCXMYJ5I*=!$(b|8lEzfY^iHI&hm;?Ig*=M^ zb<6UXVco%z7Aw>Lg}UO3694ru4b?GF5DZ?Z zY(zYcX#$rfIgUujk<3DRYd$xy@=S)DWx{j&&j z5{i6QBD$&v0Z7)R0OfBFx*Z% z(k*7WGXZG~L9jdrX-EWbWe@qYJtyb% zu=-S#S5;+{PMyxD{l&h2)YMti*t})mDV2~Oudf3Z(>BY^A!HFsBUUOi>z z>RR?d&E~3g8+T8>Z_Mt~2Z!)WKhZ|=7k1f3rWb4gRR}0c;adwfEL&HDB*E0BC<_K~ zrJUWqoj?G`Y_STB;t)nLQt-BBTyx~cko8S7pHDc^~R7Y^&h3ht= zxTNBq%~a*SO=wlHA@6R&b!tM)P+$-usa&>h?dEkgFWr5?&aH!kv`?MBx|W|>YLDez zOR>Md<)VE8FTH5bux29vz*>Fe?zDN)A=Rg>u6?QFBE6h2gP-}E{g@y6CIX~j)GQeK zWVx@Pm;)-}hZSm&BJ*u2n57C%!`WvASL6J$f}tXK3@t7SGcZ}fP>o=nOGf-vF;Spa z!2qmu$B-c#*nJ`JRxCI$A#~Zd1E!fw@F5ea{RC#DYTJu=;|fM+Dk_K`W!Bd-VJN1_ zO1clmQ^93s$9jz!d`E8#$v+%|=&TtLR=>j7Oo=A~ohkeg8%)VXR4K`Uf3j0bED_*F zi7w)_DLM)R;FU-nUb6#7vDtwG9i*!|wI-pCmJk?3E9pAA0IRr2j($_TPOMl;yv|sY zduNK-nC_4i(M}Md#O?$UDkPB;(o$iIC{lpx*m=av_d79Wsvr_v&Xyd|or~&VP#O%K z%3l$ZUu|+f2p#08I=v>&L6<_{D~!#NbzJcRr_ev<0yj!@t^%`xt26|z41sGx;6Mo6 zYH~Ihc;?E^h8CJLYiK!RxiUX03d?vffl3M2JFmV^C20doS(f>3X z#Du7EjN9xi1{$O!6jN&w8WUn+VjeR)i|Gn!dzP`qqF?YI(`$+-2HYr)V{td2#1;F9 ziD*=@sRg4zgsMNP)$CwYJGR`CvA9@Mz2j2MsLOG{lj>KM4w<2u8P%3_S^3xThg6EwkQ zT8RW`xSCf91tE3HLSS^PEJnh4v#rO5@mGyKXmF3D)Ke1zH=1V4144s!FdPaV3nEkp zV>3hYOGEOZ6T$k&B~0^g>^ZZ8aj|BlaV2KsaUlea+YwTyBc$zRQ;`#sOzsmg1nVVZ ziGh&(HtevK(N63RDL8AwNe*)ek}4V7BoQS6kuuatCqn9+4}q^UcE7AYKFTC|d_fRD zqH2T7&8pHFvr@7e$gMn0uCpkn{CS;m*CUlu?Q*0D*Ti8GB zi(ICtDH5vcASFcXsc4|2m5Ms5v((T!-DcZ~ketFZG0Tk3IS~v8^ZgKGt)x1w$wZoV z)}%TOQ%fo7WM(2Fue%~>vd=_1d5@_RlYvKdmJSAjF!byP=vVNco@sWL4$jnGCmo8T zreb=z*;zV>u9HNkV>lFX8A)ab8KogGB%~I83Y4aZ$T*GugNaLKC5m{e^68a3HMKJ9 zOa;t5jOUh;h)i&)>P&&Cx5<18Y^v}~0Rus}7Wbc`4)~t}M5(Gl$oNeGK@Z6Mso*RK zL)1aIECdG9VEzdco(54Xf~JK?B`Xu+_sb5lK%ENNnpMTvqbk3hu}2hq5eL&GJl$pL z!Sof31ynwULoG85oXfvc7)?I#BEMOq+>lCJ0i9W;U9QXZD$}Hzfpy z6ctkMIny>!XiwGgtR@rxtR7L{n18d;u_9tN#G<&FeZ*{>?KY8SV>nc2IUS~w=3F=R zV-D(kPjWd2%v35E1d-;`HMa--?~sYyO0%=v<7VUB3ue9#W2uJBR~M3h)*Kq&c{4u` zL@Vy|z?f3NykZFx|9PNjtt29^JEXxy6V4A2b$+dhDF3plXcRw4*@JoLOm#f3AOsGC z!05{#tOTm>l|&S{%&{*>G8+`Mn{$1Bp{bbjfmCs}AOv1mYPMYnqE%lD&)`|K(U+eU zhEysH5ouwc*;ygRRW)AZH9K2;g0b&Qq8FbtXGBrFsS`z6=H~&5K(w+GMI{tUcr_DO z(T0!);NV9RY0-|527B-VzREumQXgUr)`uPhJLqL>7jNiCoJF*xct_${%V7y$M8`b_ zOwU;0D;0I<`HJS2a4Fyv3HJd8$%KcVsc4{5z`&=08UaI08Ym#x)sEjZ1NM_s+X7@% zKn`jZKaqUTDt;pQomKoq@;O`1;1Bi5-)y;Tz~o!DQXAxxTUo?z1WYbvYo(D-?qus8 z118t8l^*y|1M(YN@kg-XBQ{`ixY|l3+yNMAs*~UWjI@9^0PdDBII~?bVDhEfK@`>T z_yA{0xCwBHgim0S*=vl%SWs`5)Qt@QJ}&biI(wf1(-S7$CgHPyB~p6Qq?Z}_NsWLd z9`cv!T}FO#4d6=#Om5N$H(-jhH{lQxIYt5bOUaKwRFkhX;)ns$qpAogA@Y$rY(_r$ zM;!$QOs-FI5l~xldpdSV_%h&Q22Acx$7ucP(HaQBkK&f2z4SM0m>(@V`PVfO97u1@Mz&~jFgDT)i?+U zM1vj*^tF4-?&(~_`6@a`alZ6>S1>lTg@3V68)qqw;u{OKWcvNlYD=E}KE=vZ52XjzNK4xw5py<$wSBJx$bK6;pV-`#lA1MjtT|D%?# ziqvE2RnREBM%>Py*Y(f*hmDw0TG^=ztw6k{d}2~j=;JY&0{@X-tOg_!gbSxM7J zIGk+6jM1sTkg_yyJ6`C;d9|DJ5pp0bPnJjHl^{Is%G-~(-aUBnYz{P|0{lGqi<2OgW%tpkxPePJ5ZWZfsIe9G z**GDGfClvmICMIeMb7bn5+|11yO!0`duuohUV9(~FYC1>)^^|&M%^oTs~ab1#4(== zHViLm4#hCk)qOCn7H0?skw_@2%dD}O7ug@PNdM8~A4p<(dZeB(C6;h2Wx@MJO;jZFs4oH2 zOQU!*wSZ2}^DStGmnrr~>M{QB6GfopbdVB5aaUw)r!(~f$ECLB(2)#?saPG$z|iCb z@bC#eMj@I}7AbhkC*lB%7QipP?bv{PoS7*E{z6cMLk0t}O9GJMqXPqA%#q!LsgBVaNdS_wk(SOfp->tJFPY^UaF3oHIZpM6Kz@i>LC5LTYRXJ6H*25`3@YC zRdV=xm;ODRg?ZPd|M-^b-B5RW4-CjF@k+FU5z9-f;adjl8UB*xsjO>Vst3WVY$Z6Y zQHUdq4bevp+vshFqyzX{>v|RMK{oO`hUnRO8@+hW zytay*>@^&Hc;C-yNdQ zTQ1N9p2u6O3YCFIlSdmwvmmGK?Z~@1}#D zQ0?Ya1P4iF0iTFjN2h;03~&wMB9-4pM=S+SzxAg?PsXDdVMGIIurfMp%9@_BeYa_w zZDsputdq@|KAfJ7!fBOXfCsXktnR{Mck@D=@7|t*HwO{aVj8Sn8n-j~A6J`B zS%mpEbZ8(2NUQn#QF;c}A$^$6Zxx!;e#%-&-9nyL$a4qcwYkKw_(_Alo<*(E>z-#& z?}0a&<<MvTp7|UOb z)~9J}`Cp>-W$0se47e@l58-F*S~9|0uK(^Ry0Y!fwXJQ=WhZvSOww!V&#boI%ioRB zi_msVtUhi0S||ykH1?l?ZDih4IP4<`{l|Th&=Z2thhnkfuH{e0>VKSn7fLK(;Y7gC zj)7hrlm4GYBnP7J8@wR)7#0Y;kN-d8jl=W<-GYx-M(O!+I5n84x#}Yq9j)8G*bUi6 zd%Kw(7O9*^$3fi12*NY2K9yxHPyJxa-Xuh2nP*#a`$TW%@TzqSsUhW5>w01a79bm;+SITIz!u*S{G(vT@vLp%+^Z3Ws`)MbO(AM0D9X#2lf19d{n^+ z5mFHW8VCX9V=f(rHEEUBr0UdIEPNmki$%$Un82_$WsuIr2CKCk_I%882OC50#e>L# zW~+7)#Jtk+|iid6zHtTkmK^g`Ggy`kA$YIwi|k zh=W?&J|@f4|8K@YM;mRgDELbh)MbsZ>lG}8>Nl^}j-$*8sio0sePAx8c`BPg!I2<^ zED!^^F24b$SqIePADj<-r-hJ0W_!xNO}(L#lA^IBSc~zlau(%z8=14E!Pp}BWg&t|Y7VG( zbi-=RbwFcT^%JmMj%6uzzrOvb7lGYM|MJFMoFXi5{hZbujqP28rO?N$__egY$*eCp z5n%muW^aHLXdTA_l7@XpN`2v?qu-WCM_mIA%%Ac?u5}GKEJx)ug9A$kW=$>4lDfux zv86MJwCo7HhQs-v0C56Bwk??Lu6xXzPK)5I6xYhYTZruUSLSMIa;{``w+O?+T zf@?kU-0(lfqCBc$F^g|`6C0&P`28FwEuDTA+ccmZCkp922T_dI`#l)Hu{54IxK|31 zd%RC;t@SCl3r?`VOldl$9j{xvSP&<;qmwPDkJZK2kcR`dPT)eiKC&pCei6*fM(t=N zYCi-$YQ#nu?RWZ7XpEm|n1=bS9l)jro7OByK#ZY?wgPcuSDZ%3$rhlV=m5mtoDcmV zMT2NlsN=dugGfVyS~2B8H&PGep$>G%FSbRJ2ztqV8#+K#1{~(Ji0}whnFz#8cu0ip z+^RV!Mg)}1OG-v%ggh^xRUa6Oye_QI*lClZ`QN-$LQ`7RLAa*k+yMG`6{k1aU@vm5 z{u%.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 Ry!JY3tiYf3!8t!;{|f^%&-efU diff --git a/source/libwolfssl/ocsp.h b/source/libwolfssl/ocsp.h index e5c3a12f..8a8dcc53 100644 --- a/source/libwolfssl/ocsp.h +++ b/source/libwolfssl/ocsp.h @@ -1,6 +1,6 @@ /* ocsp.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -28,8 +28,8 @@ #ifdef HAVE_OCSP -#include -#include +#include +#include #ifdef __cplusplus extern "C" { @@ -38,10 +38,12 @@ typedef struct WOLFSSL_OCSP WOLFSSL_OCSP; #if defined(OPENSSL_ALL) || defined(OPENSSL_EXTRA) || defined(WOLFSSL_NGINX) ||\ - defined(WOLFSSL_HAPROXY) + defined(WOLFSSL_HAPROXY) || defined(HAVE_LIGHTY) typedef struct OcspResponse WOLFSSL_OCSP_BASICRESP; -typedef struct OcspRequest WOLFSSL_OCSP_CERTID; +typedef struct OcspEntry WOLFSSL_OCSP_CERTID; + +typedef struct OcspEntry WOLFSSL_OCSP_SINGLERESP; typedef struct OcspRequest WOLFSSL_OCSP_ONEREQ; @@ -62,7 +64,7 @@ WOLFSSL_LOCAL int CheckOcspResponse(WOLFSSL_OCSP *ocsp, byte *response, int resp OcspEntry *entry, OcspRequest *ocspRequest); #if defined(OPENSSL_ALL) || defined(WOLFSSL_NGINX) || defined(WOLFSSL_HAPROXY) || \ - defined(WOLFSSL_APACHE_HTTPD) + defined(WOLFSSL_APACHE_HTTPD) || defined(HAVE_LIGHTY) WOLFSSL_API int wolfSSL_OCSP_resp_find_status(WOLFSSL_OCSP_BASICRESP *bs, WOLFSSL_OCSP_CERTID *id, int *status, int *reason, @@ -82,8 +84,10 @@ WOLFSSL_API int wolfSSL_OCSP_basic_verify(WOLFSSL_OCSP_BASICRESP *bs, WOLF_STACK_OF(WOLFSSL_X509) *certs, WOLFSSL_X509_STORE *st, unsigned long flags); WOLFSSL_API void wolfSSL_OCSP_RESPONSE_free(OcspResponse* response); +#ifndef NO_BIO WOLFSSL_API OcspResponse* wolfSSL_d2i_OCSP_RESPONSE_bio(WOLFSSL_BIO* bio, OcspResponse** response); +#endif WOLFSSL_API OcspResponse* wolfSSL_d2i_OCSP_RESPONSE(OcspResponse** response, const unsigned char** data, int len); WOLFSSL_API int wolfSSL_i2d_OCSP_RESPONSE(OcspResponse* response, @@ -100,8 +104,21 @@ WOLFSSL_API int wolfSSL_i2d_OCSP_REQUEST(OcspRequest* request, WOLFSSL_API WOLFSSL_OCSP_ONEREQ* wolfSSL_OCSP_request_add0_id(OcspRequest *req, WOLFSSL_OCSP_CERTID *cid); WOLFSSL_API WOLFSSL_OCSP_CERTID* wolfSSL_OCSP_CERTID_dup(WOLFSSL_OCSP_CERTID*); +#ifndef NO_BIO WOLFSSL_API int wolfSSL_i2d_OCSP_REQUEST_bio(WOLFSSL_BIO* out, WOLFSSL_OCSP_REQUEST *req); +#endif + +WOLFSSL_API int wolfSSL_i2d_OCSP_CERTID(WOLFSSL_OCSP_CERTID *, unsigned char **); +WOLFSSL_API const WOLFSSL_OCSP_CERTID* wolfSSL_OCSP_SINGLERESP_get0_id(const WOLFSSL_OCSP_SINGLERESP *single); +WOLFSSL_API int wolfSSL_OCSP_id_cmp(WOLFSSL_OCSP_CERTID *a, WOLFSSL_OCSP_CERTID *b); +WOLFSSL_API int wolfSSL_OCSP_single_get0_status(WOLFSSL_OCSP_SINGLERESP *single, + int *reason, + WOLFSSL_ASN1_TIME **revtime, + WOLFSSL_ASN1_TIME **thisupd, + WOLFSSL_ASN1_TIME **nextupd); +WOLFSSL_API int wolfSSL_OCSP_resp_count(WOLFSSL_OCSP_BASICRESP *bs); +WOLFSSL_API WOLFSSL_OCSP_SINGLERESP* wolfSSL_OCSP_resp_get0(WOLFSSL_OCSP_BASICRESP *bs, int idx); #endif #ifdef OPENSSL_EXTRA diff --git a/source/libwolfssl/openssl/aes.h b/source/libwolfssl/openssl/aes.h index 283aa9a5..afd6fcec 100644 --- a/source/libwolfssl/openssl/aes.h +++ b/source/libwolfssl/openssl/aes.h @@ -1,6 +1,6 @@ /* aes.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -29,10 +29,10 @@ #ifndef WOLFSSL_AES_H_ #define WOLFSSL_AES_H_ -#include +#include #ifndef NO_AES -#include /* for size_t */ +#include /* for size_t */ #ifdef __cplusplus extern "C" { @@ -42,26 +42,7 @@ * OpenSSL compatibility layer. This makes code working with an AES structure * to need the size of the structure. */ typedef struct WOLFSSL_AES_KEY { - /* aligned and big enough for Aes from wolfssl/wolfcrypt/aes.h */ - ALIGN16 void* holder[(376 + WC_ASYNC_DEV_SIZE)/ sizeof(void*)]; - #ifdef GCM_TABLE - /* key-based fast multiplication table. */ - ALIGN16 void* M0[4096 / sizeof(void*)]; - #endif /* GCM_TABLE */ - #if defined(WOLFSSL_DEVCRYPTO) && \ - (defined(WOLFSSL_DEVCRYPTO_AES) || defined(WOLFSSL_DEVCRYPTO_CBC)) - /* large enough for additional devcrypto information */ - void* devKey[288 / sizeof(void*)]; - #endif - #ifdef WOLFSSL_AFALG - void* afalg_holder[288 / sizeof(void*)]; - #endif - #ifdef HAVE_PKCS11 - void* pkcs11_holder[(AES_MAX_ID_LEN + sizeof(int)) / sizeof(void*)]; - #endif - #if defined(WOLFSSL_ASYNC_CRYPT) || defined(WOLF_CRYPTO_CB) - void* async_holder[128 / sizeof(void*)]; - #endif + ALIGN16 void *buf[(sizeof(Aes) / sizeof(void *)) + 1]; } WOLFSSL_AES_KEY; typedef WOLFSSL_AES_KEY AES_KEY; @@ -78,12 +59,20 @@ WOLFSSL_API void wolfSSL_AES_ecb_encrypt WOLFSSL_API void wolfSSL_AES_cfb128_encrypt (const unsigned char *in, unsigned char* out, size_t len, AES_KEY *key, unsigned char* iv, int* num, const int enc); +WOLFSSL_API int wolfSSL_AES_wrap_key(AES_KEY *key, const unsigned char *iv, + unsigned char *out, + const unsigned char *in, unsigned int inlen); +WOLFSSL_API int wolfSSL_AES_unwrap_key(AES_KEY *key, const unsigned char *iv, + unsigned char *out, + const unsigned char *in, unsigned int inlen); #define AES_cbc_encrypt wolfSSL_AES_cbc_encrypt #define AES_ecb_encrypt wolfSSL_AES_ecb_encrypt #define AES_cfb128_encrypt wolfSSL_AES_cfb128_encrypt #define AES_set_encrypt_key wolfSSL_AES_set_encrypt_key #define AES_set_decrypt_key wolfSSL_AES_set_decrypt_key +#define AES_wrap_key wolfSSL_AES_wrap_key +#define AES_unwrap_key wolfSSL_AES_unwrap_key #ifdef WOLFSSL_AES_DIRECT WOLFSSL_API void wolfSSL_AES_encrypt diff --git a/source/libwolfssl/openssl/asn1.h b/source/libwolfssl/openssl/asn1.h index 37a0e9e5..14efe494 100644 --- a/source/libwolfssl/openssl/asn1.h +++ b/source/libwolfssl/openssl/asn1.h @@ -1,6 +1,6 @@ /* asn1.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -24,7 +24,7 @@ #ifndef WOLFSSL_ASN1_H_ #define WOLFSSL_ASN1_H_ -#include +#include #define ASN1_STRING_new wolfSSL_ASN1_STRING_new #define ASN1_STRING_type_new wolfSSL_ASN1_STRING_type_new @@ -32,6 +32,10 @@ #define ASN1_STRING_set wolfSSL_ASN1_STRING_set #define ASN1_STRING_free wolfSSL_ASN1_STRING_free +#define ASN1_get_object wolfSSL_ASN1_get_object +#define d2i_ASN1_OBJECT wolfSSL_d2i_ASN1_OBJECT +#define c2i_ASN1_OBJECT wolfSSL_c2i_ASN1_OBJECT + #define V_ASN1_INTEGER 0x02 #define V_ASN1_OCTET_STRING 0x04 /* tag for ASN1_OCTET_STRING */ #define V_ASN1_NEG 0x100 @@ -66,10 +70,21 @@ #define ASN1_TIME_diff wolfSSL_ASN1_TIME_diff #define ASN1_TIME_set wolfSSL_ASN1_TIME_set +#define V_ASN1_EOC 0 #define V_ASN1_OBJECT 6 +#define V_ASN1_UTF8STRING 12 +#define V_ASN1_SEQUENCE 16 +#define V_ASN1_SET 17 +#define V_ASN1_PRINTABLESTRING 19 +#define V_ASN1_T61STRING 20 +#define V_ASN1_IA5STRING 22 #define V_ASN1_UTCTIME 23 #define V_ASN1_GENERALIZEDTIME 24 -#define V_ASN1_PRINTABLESTRING 19 +#define V_ASN1_UNIVERSALSTRING 28 +#define V_ASN1_BMPSTRING 30 + + +#define V_ASN1_CONSTRUCTED 0x20 #define ASN1_STRING_FLAG_BITS_LEFT 0x008 #define ASN1_STRING_FLAG_NDEF 0x010 @@ -83,6 +98,12 @@ WOLFSSL_API WOLFSSL_ASN1_INTEGER *wolfSSL_BN_to_ASN1_INTEGER( WOLFSSL_API void wolfSSL_ASN1_TYPE_set(WOLFSSL_ASN1_TYPE *a, int type, void *value); +WOLFSSL_API int wolfSSL_ASN1_get_object(const unsigned char **in, long *len, int *tag, + int *cls, long inLen); + +WOLFSSL_API WOLFSSL_ASN1_OBJECT *wolfSSL_c2i_ASN1_OBJECT(WOLFSSL_ASN1_OBJECT **a, + const unsigned char **pp, long len); + #ifdef OPENSSL_ALL /* IMPLEMENT_ASN1_FUNCTIONS is strictly for external use only. Internally * we don't use this. Some projects use OpenSSL to implement ASN1 types and diff --git a/source/libwolfssl/openssl/asn1t.h b/source/libwolfssl/openssl/asn1t.h index 006b0329..feafbf09 100644 --- a/source/libwolfssl/openssl/asn1t.h +++ b/source/libwolfssl/openssl/asn1t.h @@ -1,6 +1,6 @@ /* asn1t.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -24,7 +24,7 @@ #ifndef WOLFSSL_ASN1T_H_ #define WOLFSSL_ASN1T_H_ -#include -#include +#include +#include #endif /* WOLFSSL_ASN1T_H_ */ diff --git a/source/libwolfssl/openssl/bio.h b/source/libwolfssl/openssl/bio.h index cab7ec57..7f9b049a 100644 --- a/source/libwolfssl/openssl/bio.h +++ b/source/libwolfssl/openssl/bio.h @@ -1,6 +1,6 @@ /* bio.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -25,7 +25,7 @@ #ifndef WOLFSSL_BIO_H_ #define WOLFSSL_BIO_H_ -#include +#include #ifdef __cplusplus @@ -40,7 +40,14 @@ #define BIO_FLAGS_SHOULD_RETRY WOLFSSL_BIO_FLAG_RETRY #define BIO_new_fp wolfSSL_BIO_new_fp +#if defined(OPENSSL_ALL) \ + || defined(HAVE_STUNNEL) \ + || defined(HAVE_LIGHTY) \ + || defined(WOLFSSL_MYSQL_COMPATIBLE) \ + || defined(WOLFSSL_HAPROXY) \ + || defined(OPENSSL_EXTRA) #define BIO_new_file wolfSSL_BIO_new_file +#endif #define BIO_new_fp wolfSSL_BIO_new_fp #define BIO_ctrl wolfSSL_BIO_ctrl #define BIO_ctrl_pending wolfSSL_BIO_ctrl_pending @@ -57,9 +64,11 @@ #define BIO_set_write_buf_size wolfSSL_BIO_set_write_buf_size #define BIO_make_bio_pair wolfSSL_BIO_make_bio_pair +#define BIO_new_fd wolfSSL_BIO_new_fd #define BIO_set_fp wolfSSL_BIO_set_fp #define BIO_get_fp wolfSSL_BIO_get_fp #define BIO_seek wolfSSL_BIO_seek +#define BIO_tell wolfSSL_BIO_tell #define BIO_write_filename wolfSSL_BIO_write_filename #define BIO_set_mem_eof_return wolfSSL_BIO_set_mem_eof_return @@ -123,6 +132,7 @@ #define BIO_meth_set_create wolfSSL_BIO_meth_set_create #define BIO_meth_set_destroy wolfSSL_BIO_meth_set_destroy +#define BIO_snprintf XSNPRINTF /* BIO CTRL */ #define BIO_CTRL_RESET 1 @@ -149,6 +159,7 @@ #define BIO_CTRL_DGRAM_QUERY_MTU 40 +#define BIO_FP_TEXT 0x00 #define BIO_NOCLOSE 0x00 #define BIO_CLOSE 0x01 diff --git a/source/libwolfssl/openssl/bn.h b/source/libwolfssl/openssl/bn.h index fdfb4c98..474001d8 100644 --- a/source/libwolfssl/openssl/bn.h +++ b/source/libwolfssl/openssl/bn.h @@ -1,6 +1,6 @@ /* bn.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -30,8 +30,8 @@ #ifndef WOLFSSL_BN_H_ #define WOLFSSL_BN_H_ -#include -#include +#include +#include #ifdef __cplusplus extern "C" { @@ -40,7 +40,7 @@ typedef struct WOLFSSL_BIGNUM { int neg; /* openssh deference */ void *internal; /* our big num */ -#ifdef WOLFSSL_SP_MATH +#if defined(WOLFSSL_SP_MATH) || defined(WOLFSSL_SP_MATH_ALL) sp_int fp; #elif defined(USE_FAST_MATH) && !defined(HAVE_WOLF_BIGINT) fp_int fp; @@ -49,7 +49,7 @@ typedef struct WOLFSSL_BIGNUM { #define BN_ULONG WOLFSSL_BN_ULONG -#define WOLFSSL_BN_ULONG mp_digit +#define WOLFSSL_BN_ULONG unsigned long typedef struct WOLFSSL_BN_CTX WOLFSSL_BN_CTX; typedef struct WOLFSSL_BN_GENCB WOLFSSL_BN_GENCB; @@ -113,7 +113,7 @@ WOLFSSL_API int wolfSSL_BN_add_word(WOLFSSL_BIGNUM*, WOLFSSL_BN_ULONG); WOLFSSL_API int wolfSSL_BN_set_bit(WOLFSSL_BIGNUM*, int); WOLFSSL_API int wolfSSL_BN_clear_bit(WOLFSSL_BIGNUM*, int); WOLFSSL_API int wolfSSL_BN_set_word(WOLFSSL_BIGNUM*, WOLFSSL_BN_ULONG); -WOLFSSL_API unsigned long wolfSSL_BN_get_word(const WOLFSSL_BIGNUM*); +WOLFSSL_API WOLFSSL_BN_ULONG wolfSSL_BN_get_word(const WOLFSSL_BIGNUM*); WOLFSSL_API int wolfSSL_BN_add(WOLFSSL_BIGNUM*, WOLFSSL_BIGNUM*, WOLFSSL_BIGNUM*); diff --git a/source/libwolfssl/openssl/buffer.h b/source/libwolfssl/openssl/buffer.h index d74e31ed..f090d19f 100644 --- a/source/libwolfssl/openssl/buffer.h +++ b/source/libwolfssl/openssl/buffer.h @@ -1,6 +1,6 @@ /* buffer.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -23,8 +23,8 @@ #ifndef WOLFSSL_BUFFER_H_ #define WOLFSSL_BUFFER_H_ -#include -#include +#include +#include #ifdef __cplusplus extern "C" { @@ -34,12 +34,18 @@ WOLFSSL_API WOLFSSL_BUF_MEM* wolfSSL_BUF_MEM_new(void); WOLFSSL_API int wolfSSL_BUF_MEM_grow(WOLFSSL_BUF_MEM* buf, size_t len); WOLFSSL_API void wolfSSL_BUF_MEM_free(WOLFSSL_BUF_MEM* buf); +WOLFSSL_API size_t wolfSSL_strlcpy(char *dst, const char *src, size_t dstSize); +WOLFSSL_API size_t wolfSSL_strlcat(char *dst, const char *src, size_t dstSize); #define BUF_MEM_new wolfSSL_BUF_MEM_new #define BUF_MEM_grow wolfSSL_BUF_MEM_grow #define BUF_MEM_free wolfSSL_BUF_MEM_free +#define BUF_strdup strdup +#define BUF_strlcpy wolfSSL_strlcpy +#define BUF_strlcat wolfSSL_strlcat + #ifdef __cplusplus } /* extern "C" */ #endif diff --git a/source/libwolfssl/openssl/conf.h b/source/libwolfssl/openssl/conf.h index 373239ff..246fccca 100644 --- a/source/libwolfssl/openssl/conf.h +++ b/source/libwolfssl/openssl/conf.h @@ -1,6 +1,6 @@ /* conf.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -28,18 +28,83 @@ extern "C" { #endif -struct WOLFSSL_CONF_VALUE { +#include +#include + +typedef struct WOLFSSL_CONF_VALUE { char *section; char *name; char *value; -}; +} WOLFSSL_CONF_VALUE; -struct WOLFSSL_INIT_SETTINGS { - char* appname; -}; +/* ssl.h requires WOLFSSL_CONF_VALUE */ +#include -typedef struct WOLFSSL_CONF_VALUE CONF_VALUE; -typedef struct WOLFSSL_INIT_SETTINGS OPENSSL_INIT_SETTINGS; +typedef struct WOLFSSL_CONF { + void *meth_data; + WOLF_LHASH_OF(WOLFSSL_CONF_VALUE) *data; +} WOLFSSL_CONF; + +typedef WOLFSSL_CONF CONF; +typedef WOLFSSL_CONF_VALUE CONF_VALUE; + +#ifdef OPENSSL_EXTRA + +WOLFSSL_API WOLFSSL_CONF_VALUE *wolfSSL_CONF_VALUE_new(void); +WOLFSSL_API int wolfSSL_CONF_add_string(WOLFSSL_CONF *conf, + WOLFSSL_CONF_VALUE *section, WOLFSSL_CONF_VALUE *value); +WOLFSSL_API void wolfSSL_X509V3_conf_free(WOLFSSL_CONF_VALUE *val); + +WOLFSSL_API WOLFSSL_CONF *wolfSSL_NCONF_new(void *meth); +WOLFSSL_API char *wolfSSL_NCONF_get_string(const WOLFSSL_CONF *conf, + const char *group, const char *name); +WOLFSSL_API int wolfSSL_NCONF_get_number(const CONF *conf, const char *group, + const char *name, long *result); +WOLFSSL_API WOLFSSL_STACK *wolfSSL_NCONF_get_section( + const WOLFSSL_CONF *conf, const char *section); +WOLFSSL_API int wolfSSL_NCONF_load(WOLFSSL_CONF *conf, const char *file, long *eline); +WOLFSSL_API void wolfSSL_NCONF_free(WOLFSSL_CONF *conf); + +WOLFSSL_API WOLFSSL_CONF_VALUE *wolfSSL_lh_WOLFSSL_CONF_VALUE_retrieve( + WOLF_LHASH_OF(WOLFSSL_CONF_VALUE) *sk, WOLFSSL_CONF_VALUE *data); + +WOLFSSL_API int wolfSSL_CONF_modules_load(const WOLFSSL_CONF *cnf, const char *appname, + unsigned long flags); +WOLFSSL_API WOLFSSL_CONF_VALUE *wolfSSL_CONF_new_section(WOLFSSL_CONF *conf, + const char *section); +WOLFSSL_API WOLFSSL_CONF_VALUE *wolfSSL_CONF_get_section(WOLFSSL_CONF *conf, + const char *section); + +WOLFSSL_API WOLFSSL_X509_EXTENSION* wolfSSL_X509V3_EXT_nconf_nid(WOLFSSL_CONF* conf, + WOLFSSL_X509V3_CTX *ctx, int nid, const char *value); +WOLFSSL_API WOLFSSL_X509_EXTENSION* wolfSSL_X509V3_EXT_nconf(WOLFSSL_CONF *conf, + WOLFSSL_X509V3_CTX *ctx, const char *sName, const char *value); + +#define sk_CONF_VALUE_new wolfSSL_sk_CONF_VALUE_new +#define sk_CONF_VALUE_free wolfSSL_sk_CONF_VALUE_free +#define sk_CONF_VALUE_pop_free(a,b) wolfSSL_sk_CONF_VALUE_free(a) +#define sk_CONF_VALUE_num wolfSSL_sk_CONF_VALUE_num +#define sk_CONF_VALUE_value wolfSSL_sk_CONF_VALUE_value + +#define lh_CONF_VALUE_retrieve wolfSSL_lh_WOLFSSL_CONF_VALUE_retrieve +#define lh_CONF_VALUE_insert wolfSSL_sk_CONF_VALUE_push + +#define NCONF_new wolfSSL_NCONF_new +#define NCONF_free wolfSSL_NCONF_free +#define NCONF_get_string wolfSSL_NCONF_get_string +#define NCONF_get_section wolfSSL_NCONF_get_section +#define NCONF_get_number wolfSSL_NCONF_get_number +#define NCONF_load wolfSSL_NCONF_load + +#define CONF_modules_load wolfSSL_CONF_modules_load +#define _CONF_new_section wolfSSL_CONF_new_section +#define _CONF_get_section wolfSSL_CONF_get_section + +#define X509V3_EXT_nconf_nid wolfSSL_X509V3_EXT_nconf_nid +#define X509V3_EXT_nconf wolfSSL_X509V3_EXT_nconf +#define X509V3_conf_free wolfSSL_X509V3_conf_free + +#endif /* OPENSSL_EXTRA */ #ifdef __cplusplus } /* extern "C" */ diff --git a/source/libwolfssl/openssl/crypto.h b/source/libwolfssl/openssl/crypto.h index 8c27b594..9b804b43 100644 --- a/source/libwolfssl/openssl/crypto.h +++ b/source/libwolfssl/openssl/crypto.h @@ -1,6 +1,6 @@ /* crypto.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -24,15 +24,29 @@ #ifndef WOLFSSL_CRYPTO_H_ #define WOLFSSL_CRYPTO_H_ -#include +#include -#include +typedef struct WOLFSSL_INIT_SETTINGS { + char* appname; +} WOLFSSL_INIT_SETTINGS; +typedef WOLFSSL_INIT_SETTINGS OPENSSL_INIT_SETTINGS; + +typedef struct WOLFSSL_CRYPTO_THREADID { + int dummy; +} WOLFSSL_CRYPTO_THREADID; +typedef struct crypto_threadid_st CRYPTO_THREADID; + +typedef struct CRYPTO_EX_DATA CRYPTO_EX_DATA; +typedef void (CRYPTO_free_func)(void* parent, void* ptr, CRYPTO_EX_DATA* ad, int idx, + long argl, void* argp); + +#include +#include #ifdef WOLFSSL_PREFIX #include "prefix_crypto.h" #endif - WOLFSSL_API const char* wolfSSLeay_version(int type); WOLFSSL_API unsigned long wolfSSLeay(void); WOLFSSL_API unsigned long wolfSSL_OpenSSL_version_num(void); @@ -40,9 +54,14 @@ WOLFSSL_API unsigned long wolfSSL_OpenSSL_version_num(void); #ifdef OPENSSL_EXTRA WOLFSSL_API void wolfSSL_OPENSSL_free(void*); WOLFSSL_API void *wolfSSL_OPENSSL_malloc(size_t a); +WOLFSSL_API int wolfSSL_OPENSSL_hexchar2int(unsigned char c); +WOLFSSL_API unsigned char *wolfSSL_OPENSSL_hexstr2buf(const char *str, long *len); + +WOLFSSL_API int wolfSSL_OPENSSL_init_crypto(word64 opts, const OPENSSL_INIT_SETTINGS *settings); #endif -#define CRYPTO_THREADID void +#define crypto_threadid_st WOLFSSL_CRYPTO_THREADID +#define CRYPTO_THREADID WOLFSSL_CRYPTO_THREADID #define SSLeay_version wolfSSLeay_version #define SSLeay wolfSSLeay @@ -61,23 +80,35 @@ WOLFSSL_API void *wolfSSL_OPENSSL_malloc(size_t a); #define OPENSSL_free wolfSSL_OPENSSL_free #define OPENSSL_malloc wolfSSL_OPENSSL_malloc +#define OPENSSL_hexchar2int wolfSSL_OPENSSL_hexchar2int +#define OPENSSL_hexstr2buf wolfSSL_OPENSSL_hexstr2buf -#ifdef WOLFSSL_QT - #define OPENSSL_INIT_ADD_ALL_CIPHERS 0x00000004L - #define OPENSSL_INIT_ADD_ALL_DIGESTS 0x00000008L - #define OPENSSL_INIT_LOAD_CONFIG 0x00000040L +#define OPENSSL_INIT_ENGINE_ALL_BUILTIN 0x00000001L +#define OPENSSL_INIT_ADD_ALL_CIPHERS 0x00000004L +#define OPENSSL_INIT_ADD_ALL_DIGESTS 0x00000008L +#define OPENSSL_INIT_LOAD_CONFIG 0x00000040L + +#define OPENSSL_init_crypto wolfSSL_OPENSSL_init_crypto + +#ifdef WOLFSSL_OPENVPN +# define OPENSSL_assert(e) \ + if (!(e)) { \ + fprintf(stderr, "%s:%d wolfSSL internal error: assertion failed: " #e, \ + __FILE__, __LINE__); \ + raise(SIGABRT); \ + _exit(3); \ + } #endif #if defined(OPENSSL_ALL) || defined(HAVE_STUNNEL) || defined(WOLFSSL_NGINX) || \ - defined(WOLFSSL_HAPROXY) || defined(OPENSSL_EXTRA) + defined(WOLFSSL_HAPROXY) || defined(OPENSSL_EXTRA) || defined(HAVE_EX_DATA) #define CRYPTO_set_mem_ex_functions wolfSSL_CRYPTO_set_mem_ex_functions #define FIPS_mode wolfSSL_FIPS_mode #define FIPS_mode_set wolfSSL_FIPS_mode_set -typedef struct CRYPTO_EX_DATA CRYPTO_EX_DATA; -typedef void (CRYPTO_free_func)(void*parent, void*ptr, CRYPTO_EX_DATA *ad, int idx, - long argl, void* argp); #define CRYPTO_THREADID_set_callback wolfSSL_THREADID_set_callback #define CRYPTO_THREADID_set_numeric wolfSSL_THREADID_set_numeric +#define CRYPTO_THREADID_current wolfSSL_THREADID_current +#define CRYPTO_THREADID_hash wolfSSL_THREADID_hash #define CRYPTO_r_lock wc_LockMutex_ex #define CRYPTO_unlock wc_LockMutex_ex @@ -86,6 +117,13 @@ typedef void (CRYPTO_free_func)(void*parent, void*ptr, CRYPTO_EX_DATA *ad, int i #define CRYPTO_THREAD_r_lock wc_LockMutex #define CRYPTO_THREAD_unlock wc_UnLockMutex -#endif /* OPENSSL_ALL || HAVE_STUNNEL || WOLFSSL_NGINX || WOLFSSL_HAPROXY */ +#define CRYPTO_THREAD_lock_new wc_InitAndAllocMutex +#define CRYPTO_THREAD_read_lock wc_LockMutex +#define CRYPTO_THREAD_write_lock wc_LockMutex +#define CRYPTO_THREAD_lock_free wc_FreeMutex + +#define CRYPTO_set_ex_data wolfSSL_CRYPTO_set_ex_data + +#endif /* OPENSSL_ALL || HAVE_STUNNEL || WOLFSSL_NGINX || WOLFSSL_HAPROXY || HAVE_EX_DATA */ #endif /* header */ diff --git a/source/libwolfssl/openssl/des.h b/source/libwolfssl/openssl/des.h index 4e5953dc..a6bf3d7f 100644 --- a/source/libwolfssl/openssl/des.h +++ b/source/libwolfssl/openssl/des.h @@ -1,6 +1,6 @@ /* des.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -29,7 +29,7 @@ #ifndef WOLFSSL_DES_H_ #define WOLFSSL_DES_H_ -#include +#include #ifndef NO_DES3 diff --git a/source/libwolfssl/openssl/dh.h b/source/libwolfssl/openssl/dh.h index 5483bd2c..a18e78c1 100644 --- a/source/libwolfssl/openssl/dh.h +++ b/source/libwolfssl/openssl/dh.h @@ -1,6 +1,6 @@ /* dh.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -25,7 +25,8 @@ #ifndef WOLFSSL_DH_H_ #define WOLFSSL_DH_H_ -#include +#include +#include #ifdef __cplusplus extern "C" { @@ -58,16 +59,17 @@ WOLFSSL_API WOLFSSL_DH *wolfSSL_d2i_DHparams(WOLFSSL_DH **dh, WOLFSSL_API int wolfSSL_i2d_DHparams(const WOLFSSL_DH *dh, unsigned char **out); WOLFSSL_API WOLFSSL_DH* wolfSSL_DH_new(void); WOLFSSL_API void wolfSSL_DH_free(WOLFSSL_DH*); +WOLFSSL_API WOLFSSL_DH* wolfSSL_DH_dup(WOLFSSL_DH* dh); WOLFSSL_API int wolfSSL_DH_check(const WOLFSSL_DH *dh, int *codes); WOLFSSL_API int wolfSSL_DH_size(WOLFSSL_DH*); WOLFSSL_API int wolfSSL_DH_generate_key(WOLFSSL_DH*); -WOLFSSL_API int wolfSSL_DH_compute_key(unsigned char* key, WOLFSSL_BIGNUM* pub, +WOLFSSL_API int wolfSSL_DH_compute_key(unsigned char* key, const WOLFSSL_BIGNUM* pub, WOLFSSL_DH*); WOLFSSL_API int wolfSSL_DH_LoadDer(WOLFSSL_DH*, const unsigned char*, int sz); WOLFSSL_API int wolfSSL_DH_set0_pqg(WOLFSSL_DH*, WOLFSSL_BIGNUM*, WOLFSSL_BIGNUM*, WOLFSSL_BIGNUM*); - + #define DH_new wolfSSL_DH_new #define DH_free wolfSSL_DH_free @@ -78,9 +80,10 @@ WOLFSSL_API int wolfSSL_DH_set0_pqg(WOLFSSL_DH*, WOLFSSL_BIGNUM*, #define DH_size wolfSSL_DH_size #define DH_generate_key wolfSSL_DH_generate_key #define DH_compute_key wolfSSL_DH_compute_key -#if defined(OPENSSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER >= 0x10100000L #define DH_set0_pqg wolfSSL_DH_set0_pqg -#endif +#define DH_get0_pqg wolfSSL_DH_get0_pqg +#define DH_get0_key wolfSSL_DH_get0_key +#define DH_set0_key wolfSSL_DH_set0_key #define DH_bits(x) (BN_num_bits(x->p)) #define DH_GENERATOR_2 2 diff --git a/source/libwolfssl/openssl/dsa.h b/source/libwolfssl/openssl/dsa.h index 7b7e667e..e34943aa 100644 --- a/source/libwolfssl/openssl/dsa.h +++ b/source/libwolfssl/openssl/dsa.h @@ -1,6 +1,6 @@ /* dsa.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -25,7 +25,7 @@ #ifndef WOLFSSL_DSA_H_ #define WOLFSSL_DSA_H_ -#include +#include #ifdef __cplusplus extern "C" { @@ -68,6 +68,17 @@ WOLFSSL_API int wolfSSL_DSA_generate_parameters_ex(WOLFSSL_DSA*, int bits, unsigned char* seed, int seedLen, int* counterRet, unsigned long* hRet, void* cb); +WOLFSSL_API void wolfSSL_DSA_get0_pqg(const WOLFSSL_DSA *d, const WOLFSSL_BIGNUM **p, + const WOLFSSL_BIGNUM **q, const WOLFSSL_BIGNUM **g); +WOLFSSL_API int wolfSSL_DSA_set0_pqg(WOLFSSL_DSA *d, WOLFSSL_BIGNUM *p, + WOLFSSL_BIGNUM *q, WOLFSSL_BIGNUM *g); + +WOLFSSL_API void wolfSSL_DSA_get0_key(const WOLFSSL_DSA *d, + const WOLFSSL_BIGNUM **pub_key, const WOLFSSL_BIGNUM **priv_key); +WOLFSSL_API int wolfSSL_DSA_set0_key(WOLFSSL_DSA *d, WOLFSSL_BIGNUM *pub_key, + WOLFSSL_BIGNUM *priv_key); + + WOLFSSL_API int wolfSSL_DSA_LoadDer(WOLFSSL_DSA*, const unsigned char*, int sz); WOLFSSL_API int wolfSSL_DSA_LoadDer_ex(WOLFSSL_DSA*, const unsigned char*, @@ -84,8 +95,17 @@ WOLFSSL_API int wolfSSL_DSA_bits(const WOLFSSL_DSA *d); WOLFSSL_API WOLFSSL_DSA_SIG* wolfSSL_DSA_SIG_new(void); WOLFSSL_API void wolfSSL_DSA_SIG_free(WOLFSSL_DSA_SIG *sig); + +WOLFSSL_API void wolfSSL_DSA_SIG_get0(const WOLFSSL_DSA_SIG *sig, + const WOLFSSL_BIGNUM **r, const WOLFSSL_BIGNUM **s); +WOLFSSL_API int wolfSSL_DSA_SIG_set0(WOLFSSL_DSA_SIG *sig, WOLFSSL_BIGNUM *r, + WOLFSSL_BIGNUM *s); + +WOLFSSL_API int wolfSSL_i2d_DSA_SIG(const WOLFSSL_DSA_SIG *sig, byte **out); +WOLFSSL_API WOLFSSL_DSA_SIG* wolfSSL_d2i_DSA_SIG(WOLFSSL_DSA_SIG **sig, + const unsigned char **pp, long length); WOLFSSL_API WOLFSSL_DSA_SIG* wolfSSL_DSA_do_sign_ex(const unsigned char* digest, - int outLen, WOLFSSL_DSA* dsa); + int inLen, WOLFSSL_DSA* dsa); WOLFSSL_API int wolfSSL_DSA_do_verify_ex(const unsigned char* digest, int digest_len, WOLFSSL_DSA_SIG* sig, WOLFSSL_DSA* dsa); @@ -99,9 +119,17 @@ WOLFSSL_API int wolfSSL_DSA_do_verify_ex(const unsigned char* digest, int digest #define DSA_generate_key wolfSSL_DSA_generate_key #define DSA_generate_parameters wolfSSL_DSA_generate_parameters #define DSA_generate_parameters_ex wolfSSL_DSA_generate_parameters_ex +#define DSA_get0_pqg wolfSSL_DSA_get0_pqg +#define DSA_set0_pqg wolfSSL_DSA_set0_pqg +#define DSA_get0_key wolfSSL_DSA_get0_key +#define DSA_set0_key wolfSSL_DSA_set0_key #define DSA_SIG_new wolfSSL_DSA_SIG_new #define DSA_SIG_free wolfSSL_DSA_SIG_free +#define DSA_SIG_get0 wolfSSL_DSA_SIG_get0 +#define DSA_SIG_set0 wolfSSL_DSA_SIG_set0 +#define i2d_DSA_SIG wolfSSL_i2d_DSA_SIG +#define d2i_DSA_SIG wolfSSL_d2i_DSA_SIG #define DSA_do_sign wolfSSL_DSA_do_sign_ex #define DSA_do_verify wolfSSL_DSA_do_verify_ex diff --git a/source/libwolfssl/openssl/ec.h b/source/libwolfssl/openssl/ec.h index 8e58905f..77019dcc 100644 --- a/source/libwolfssl/openssl/ec.h +++ b/source/libwolfssl/openssl/ec.h @@ -1,6 +1,6 @@ /* ec.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -24,8 +24,9 @@ #ifndef WOLFSSL_EC_H_ #define WOLFSSL_EC_H_ -#include -#include +#include +#include +#include #ifdef __cplusplus extern "C" { @@ -68,6 +69,13 @@ enum { NID_brainpoolP512r1 = 933, #endif +#ifdef HAVE_ED448 + NID_ED448 = ED448k, +#endif +#ifdef HAVE_ED25519 + NID_ED25519 = ED25519k, +#endif + OPENSSL_EC_NAMED_CURVE = 0x001 }; @@ -109,10 +117,13 @@ struct WOLFSSL_EC_KEY { WOLFSSL_BIGNUM *priv_key; void* internal; /* our ECC Key */ - char inSet; /* internal set from external ? */ - char exSet; /* external set from internal ? */ char form; /* Either POINT_CONVERSION_UNCOMPRESSED or * POINT_CONVERSION_COMPRESSED */ + word16 pkcs8HeaderSz; + + /* option bits */ + byte inSet:1; /* internal set from external ? */ + byte exSet:1; /* external set from internal ? */ }; struct WOLFSSL_EC_BUILTIN_CURVE { @@ -146,6 +157,9 @@ int wolfSSL_EC_POINT_oct2point(const WOLFSSL_EC_GROUP *group, WOLFSSL_EC_POINT *p, const unsigned char *buf, size_t len, WOLFSSL_BN_CTX *ctx); WOLFSSL_API +WOLFSSL_EC_KEY *wolfSSL_o2i_ECPublicKey(WOLFSSL_EC_KEY **a, const unsigned char **in, + long len); +WOLFSSL_API int wolfSSL_i2o_ECPublicKey(const WOLFSSL_EC_KEY *in, unsigned char **out); WOLFSSL_API WOLFSSL_EC_KEY *wolfSSL_d2i_ECPrivateKey(WOLFSSL_EC_KEY **key, const unsigned char **in, @@ -184,6 +198,7 @@ WOLFSSL_BIGNUM *wolfSSL_EC_KEY_get0_private_key(const WOLFSSL_EC_KEY *key); WOLFSSL_API WOLFSSL_EC_KEY *wolfSSL_EC_KEY_new_by_curve_name(int nid); WOLFSSL_API const char* wolfSSL_EC_curve_nid2nist(int nid); +WOLFSSL_API int wolfSSL_EC_curve_nist2nid(const char* name); WOLFSSL_API WOLFSSL_EC_KEY *wolfSSL_EC_KEY_new(void); WOLFSSL_API @@ -195,6 +210,7 @@ void wolfSSL_EC_KEY_set_asn1_flag(WOLFSSL_EC_KEY *key, int asn1_flag); WOLFSSL_API int wolfSSL_EC_KEY_set_public_key(WOLFSSL_EC_KEY *key, const WOLFSSL_EC_POINT *pub); +WOLFSSL_API int wolfSSL_EC_KEY_check_key(const WOLFSSL_EC_KEY *key); WOLFSSL_API int wolfSSL_ECDSA_size(const WOLFSSL_EC_KEY *key); WOLFSSL_API int wolfSSL_ECDSA_sign(int type, const unsigned char *digest, int digestSz, unsigned char *sig, @@ -287,6 +303,7 @@ char* wolfSSL_EC_POINT_point2hex(const WOLFSSL_EC_GROUP* group, #define EC_KEY_generate_key wolfSSL_EC_KEY_generate_key #define EC_KEY_set_asn1_flag wolfSSL_EC_KEY_set_asn1_flag #define EC_KEY_set_public_key wolfSSL_EC_KEY_set_public_key +#define EC_KEY_check_key wolfSSL_EC_KEY_check_key #define ECDSA_size wolfSSL_ECDSA_size #define ECDSA_sign wolfSSL_ECDSA_sign @@ -301,6 +318,9 @@ char* wolfSSL_EC_POINT_point2hex(const WOLFSSL_EC_GROUP* group, #define EC_GROUP_get_order wolfSSL_EC_GROUP_get_order #define EC_GROUP_order_bits wolfSSL_EC_GROUP_order_bits #define EC_GROUP_method_of wolfSSL_EC_GROUP_method_of +#ifndef NO_WOLFSSL_STUB +#define EC_GROUP_set_point_conversion_form(...) +#endif #define EC_METHOD_get_field_type wolfSSL_EC_METHOD_get_field_type @@ -326,6 +346,7 @@ char* wolfSSL_EC_POINT_point2hex(const WOLFSSL_EC_GROUP* group, #define EC_POINT_oct2point wolfSSL_EC_POINT_oct2point #define EC_POINT_point2bn wolfSSL_EC_POINT_point2bn #define EC_POINT_is_on_curve wolfSSL_EC_POINT_is_on_curve +#define o2i_ECPublicKey wolfSSL_o2i_ECPublicKey #define i2o_ECPublicKey wolfSSL_i2o_ECPublicKey #define i2d_EC_PUBKEY wolfSSL_i2o_ECPublicKey #define d2i_ECPrivateKey wolfSSL_d2i_ECPrivateKey @@ -340,6 +361,7 @@ char* wolfSSL_EC_POINT_point2hex(const WOLFSSL_EC_GROUP* group, #define EC_get_builtin_curves wolfSSL_EC_get_builtin_curves #define EC_curve_nid2nist wolfSSL_EC_curve_nid2nist +#define EC_curve_nist2nid wolfSSL_EC_curve_nist2nid #ifdef __cplusplus } /* extern "C" */ diff --git a/source/libwolfssl/openssl/ec25519.h b/source/libwolfssl/openssl/ec25519.h index 180eb8e8..f9cf3c9f 100644 --- a/source/libwolfssl/openssl/ec25519.h +++ b/source/libwolfssl/openssl/ec25519.h @@ -1,6 +1,6 @@ /* ec25519.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * diff --git a/source/libwolfssl/openssl/ec448.h b/source/libwolfssl/openssl/ec448.h index fb3b9005..3f0b1b7b 100644 --- a/source/libwolfssl/openssl/ec448.h +++ b/source/libwolfssl/openssl/ec448.h @@ -1,6 +1,6 @@ /* ec448.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * diff --git a/source/libwolfssl/openssl/ecdh.h b/source/libwolfssl/openssl/ecdh.h index 2652fcc1..b40f99c7 100644 --- a/source/libwolfssl/openssl/ecdh.h +++ b/source/libwolfssl/openssl/ecdh.h @@ -1,6 +1,6 @@ /* ecdh.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -24,8 +24,8 @@ #ifndef WOLFSSL_ECDH_H_ #define WOLFSSL_ECDH_H_ -#include -#include +#include +#include #ifdef __cplusplus extern "C" { diff --git a/source/libwolfssl/openssl/ecdsa.h b/source/libwolfssl/openssl/ecdsa.h index 8ed51b4c..a1383940 100644 --- a/source/libwolfssl/openssl/ecdsa.h +++ b/source/libwolfssl/openssl/ecdsa.h @@ -1,6 +1,6 @@ /* ecdsa.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -24,8 +24,8 @@ #ifndef WOLFSSL_ECDSA_H_ #define WOLFSSL_ECDSA_H_ -#include -#include +#include +#include #ifdef __cplusplus diff --git a/source/libwolfssl/openssl/ed25519.h b/source/libwolfssl/openssl/ed25519.h index 579c653f..50683d4b 100644 --- a/source/libwolfssl/openssl/ed25519.h +++ b/source/libwolfssl/openssl/ed25519.h @@ -1,6 +1,6 @@ /* ed25519.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * diff --git a/source/libwolfssl/openssl/ed448.h b/source/libwolfssl/openssl/ed448.h index b9411e92..4ff184fb 100644 --- a/source/libwolfssl/openssl/ed448.h +++ b/source/libwolfssl/openssl/ed448.h @@ -1,6 +1,6 @@ /* ed448.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * diff --git a/source/libwolfssl/openssl/engine.h b/source/libwolfssl/openssl/engine.h index 3d2507f7..d097e146 100644 --- a/source/libwolfssl/openssl/engine.h +++ b/source/libwolfssl/openssl/engine.h @@ -1,8 +1,10 @@ /* engine.h for libcurl */ -#include +#include #undef HAVE_OPENSSL_ENGINE_H -#define ENGINE_load_builtin_engines() /*ENGINE_load_builtin_engines not needed*/ +/* ENGINE_load_builtin_engines not needed, as all builtin engines are already + loaded into memory and used on startup. */ +#define ENGINE_load_builtin_engines() diff --git a/source/libwolfssl/openssl/err.h b/source/libwolfssl/openssl/err.h index 57566dce..9debeeee 100644 --- a/source/libwolfssl/openssl/err.h +++ b/source/libwolfssl/openssl/err.h @@ -1,6 +1,6 @@ /* err.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -22,7 +22,7 @@ #ifndef WOLFSSL_OPENSSL_ERR_ #define WOLFSSL_OPENSSL_ERR_ -#include +#include /* err.h for openssl */ #define ERR_load_crypto_strings wolfSSL_ERR_load_crypto_strings diff --git a/source/libwolfssl/openssl/evp.h b/source/libwolfssl/openssl/evp.h index 89cb26cf..4c29c3c2 100644 --- a/source/libwolfssl/openssl/evp.h +++ b/source/libwolfssl/openssl/evp.h @@ -1,6 +1,6 @@ /* evp.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -30,34 +30,38 @@ #ifndef WOLFSSL_EVP_H_ #define WOLFSSL_EVP_H_ -#include +#include #ifdef WOLFSSL_PREFIX #include "prefix_evp.h" #endif #ifndef NO_MD4 - #include + #include #endif #ifndef NO_MD5 - #include + #include #endif -#include -#include -#include -#include -#include -#include -#include +#include +#include +#include +#include +#include +#include +#include -#include -#include -#include -#include +#include +#include +#include +#include #ifdef HAVE_IDEA - #include + #include +#endif +#include + +#if defined(WOLFSSL_BASE64_ENCODE) || defined(WOLFSSL_BASE64_DECODE) +#include #endif -#include #ifdef __cplusplus extern "C" { @@ -81,6 +85,7 @@ typedef WOLFSSL_EVP_PKEY PKCS8_PRIV_KEY_INFO; #ifndef NO_MD5 WOLFSSL_API const WOLFSSL_EVP_MD* wolfSSL_EVP_md5(void); #endif +WOLFSSL_API void wolfSSL_EVP_set_pw_prompt(const char *); WOLFSSL_API const WOLFSSL_EVP_MD* wolfSSL_EVP_mdc2(void); WOLFSSL_API const WOLFSSL_EVP_MD* wolfSSL_EVP_sha1(void); WOLFSSL_API const WOLFSSL_EVP_MD* wolfSSL_EVP_sha224(void); @@ -286,6 +291,8 @@ enum { NID_sha3_256 = 1097, NID_sha3_384 = 1098, NID_sha3_512 = 1099, + NID_blake2b512 = 1056, + NID_blake2s256 = 1057, }; enum { @@ -372,6 +379,46 @@ struct WOLFSSL_EVP_PKEY_CTX { int nbits; }; +typedef +struct WOLFSSL_ASN1_PCTX { + int dummy; +} WOLFSSL_ASN1_PCTX; +#if defined(WOLFSSL_BASE64_ENCODE) || defined(WOLFSSL_BASE64_DECODE) + +#define BASE64_ENCODE_BLOCK_SIZE 48 +#define BASE64_ENCODE_RESULT_BLOCK_SIZE 64 +#define BASE64_DECODE_BLOCK_SIZE 4 + +struct WOLFSSL_EVP_ENCODE_CTX { + void* heap; + int remaining; /* num of bytes in data[] */ + byte data[BASE64_ENCODE_BLOCK_SIZE];/* storage for unprocessed raw data */ +}; +typedef struct WOLFSSL_EVP_ENCODE_CTX WOLFSSL_EVP_ENCODE_CTX; + +WOLFSSL_API struct WOLFSSL_EVP_ENCODE_CTX* wolfSSL_EVP_ENCODE_CTX_new(void); +WOLFSSL_API void wolfSSL_EVP_ENCODE_CTX_free(WOLFSSL_EVP_ENCODE_CTX* ctx); +#endif /* WOLFSSL_BASE64_ENCODE || WOLFSSL_BASE64_DECODE */ + +#if defined(WOLFSSL_BASE64_ENCODE) +WOLFSSL_API void wolfSSL_EVP_EncodeInit(WOLFSSL_EVP_ENCODE_CTX* ctx); +WOLFSSL_API int wolfSSL_EVP_EncodeUpdate(WOLFSSL_EVP_ENCODE_CTX* ctx, + unsigned char*out, int *outl, const unsigned char*in, int inl); +WOLFSSL_API void wolfSSL_EVP_EncodeFinal(WOLFSSL_EVP_ENCODE_CTX* ctx, + unsigned char*out, int *outl); +#endif /* WOLFSSL_BASE64_ENCODE */ + +#if defined(WOLFSSL_BASE64_DECODE) +WOLFSSL_API void wolfSSL_EVP_DecodeInit(WOLFSSL_EVP_ENCODE_CTX* ctx); +WOLFSSL_API int wolfSSL_EVP_DecodeUpdate(WOLFSSL_EVP_ENCODE_CTX* ctx, + unsigned char*out, int *outl, const unsigned char*in, int inl); +WOLFSSL_API int wolfSSL_EVP_DecodeFinal(WOLFSSL_EVP_ENCODE_CTX* ctx, + unsigned char*out, int *outl); +#endif /* WOLFSSL_BASE64_DECODE */ + +WOLFSSL_API const WOLFSSL_EVP_MD* wolfSSL_EVP_blake2b512(void); +WOLFSSL_API const WOLFSSL_EVP_MD* wolfSSL_EVP_blake2s256(void); + typedef int WOLFSSL_ENGINE ; typedef WOLFSSL_ENGINE ENGINE; typedef WOLFSSL_EVP_PKEY_CTX EVP_PKEY_CTX; @@ -381,6 +428,8 @@ typedef WOLFSSL_EVP_PKEY_CTX EVP_PKEY_CTX; #define EVP_PKEY_OP_DECRYPT (1 << 7) #define EVP_PKEY_OP_DERIVE (1 << 8) +#define EVP_PKEY_PRINT_INDENT_MAX 128 + WOLFSSL_API void wolfSSL_EVP_init(void); WOLFSSL_API int wolfSSL_EVP_MD_size(const WOLFSSL_EVP_MD* md); WOLFSSL_API int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md); @@ -547,7 +596,11 @@ WOLFSSL_API int wolfSSL_EVP_PKEY_keygen_init(WOLFSSL_EVP_PKEY_CTX *ctx); WOLFSSL_API int wolfSSL_EVP_PKEY_keygen(WOLFSSL_EVP_PKEY_CTX *ctx, WOLFSSL_EVP_PKEY **ppkey); WOLFSSL_API int wolfSSL_EVP_PKEY_bits(const WOLFSSL_EVP_PKEY *pkey); +#if defined(OPENSSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER >= 0x10100000L +WOLFSSL_API void wolfSSL_EVP_PKEY_CTX_free(WOLFSSL_EVP_PKEY_CTX *ctx); +#else WOLFSSL_API int wolfSSL_EVP_PKEY_CTX_free(WOLFSSL_EVP_PKEY_CTX *ctx); +#endif WOLFSSL_API WOLFSSL_EVP_PKEY_CTX *wolfSSL_EVP_PKEY_CTX_new(WOLFSSL_EVP_PKEY *pkey, WOLFSSL_ENGINE *e); WOLFSSL_API int wolfSSL_EVP_PKEY_CTX_set_rsa_padding(WOLFSSL_EVP_PKEY_CTX *ctx, int padding); WOLFSSL_API WOLFSSL_EVP_PKEY_CTX *wolfSSL_EVP_PKEY_CTX_new_id(int id, WOLFSSL_ENGINE *e); @@ -557,6 +610,9 @@ WOLFSSL_API int wolfSSL_EVP_PKEY_derive_init(WOLFSSL_EVP_PKEY_CTX *ctx); WOLFSSL_API int wolfSSL_EVP_PKEY_derive_set_peer(WOLFSSL_EVP_PKEY_CTX *ctx, WOLFSSL_EVP_PKEY *peer); WOLFSSL_API int wolfSSL_EVP_PKEY_derive(WOLFSSL_EVP_PKEY_CTX *ctx, unsigned char *key, size_t *keylen); +WOLFSSL_API int wolfSSL_EVP_PKEY_CTX_ctrl_str(WOLFSSL_EVP_PKEY_CTX *ctx, + const char *name, const char *value); + WOLFSSL_API int wolfSSL_EVP_PKEY_decrypt(WOLFSSL_EVP_PKEY_CTX *ctx, unsigned char *out, size_t *outlen, const unsigned char *in, size_t inlen); @@ -569,11 +625,13 @@ WOLFSSL_API WOLFSSL_EVP_PKEY *wolfSSL_EVP_PKEY_new(void); WOLFSSL_API WOLFSSL_EVP_PKEY* wolfSSL_EVP_PKEY_new_ex(void* heap); WOLFSSL_API void wolfSSL_EVP_PKEY_free(WOLFSSL_EVP_PKEY*); WOLFSSL_API int wolfSSL_EVP_PKEY_size(WOLFSSL_EVP_PKEY *pkey); +WOLFSSL_API int wolfSSL_EVP_PKEY_copy_parameters(WOLFSSL_EVP_PKEY *to, const WOLFSSL_EVP_PKEY *from); WOLFSSL_API int wolfSSL_EVP_PKEY_missing_parameters(WOLFSSL_EVP_PKEY *pkey); WOLFSSL_API int wolfSSL_EVP_PKEY_cmp(const WOLFSSL_EVP_PKEY *a, const WOLFSSL_EVP_PKEY *b); WOLFSSL_API int wolfSSL_EVP_PKEY_type(int type); -WOLFSSL_API int wolfSSL_EVP_PKEY_id(const EVP_PKEY *pkey); -WOLFSSL_API int wolfSSL_EVP_PKEY_base_id(const EVP_PKEY *pkey); +WOLFSSL_API int wolfSSL_EVP_PKEY_id(const WOLFSSL_EVP_PKEY *pkey); +WOLFSSL_API int wolfSSL_EVP_PKEY_base_id(const WOLFSSL_EVP_PKEY *pkey); +WOLFSSL_API int wolfSSL_EVP_PKEY_get_default_digest_nid(WOLFSSL_EVP_PKEY *pkey, int *pnid); WOLFSSL_API int wolfSSL_EVP_SignFinal(WOLFSSL_EVP_MD_CTX *ctx, unsigned char *sigret, unsigned int *siglen, WOLFSSL_EVP_PKEY *pkey); WOLFSSL_API int wolfSSL_EVP_SignInit(WOLFSSL_EVP_MD_CTX *ctx, const WOLFSSL_EVP_MD *type); @@ -582,7 +640,7 @@ WOLFSSL_API int wolfSSL_EVP_SignInit_ex(WOLFSSL_EVP_MD_CTX* ctx, WOLFSSL_ENGINE *impl); WOLFSSL_API int wolfSSL_EVP_SignUpdate(WOLFSSL_EVP_MD_CTX *ctx, const void *data, size_t len); WOLFSSL_API int wolfSSL_EVP_VerifyFinal(WOLFSSL_EVP_MD_CTX *ctx, - unsigned char* sig, unsigned int sig_len, WOLFSSL_EVP_PKEY *pkey); + const unsigned char* sig, unsigned int sig_len, WOLFSSL_EVP_PKEY *pkey); WOLFSSL_API int wolfSSL_EVP_VerifyInit(WOLFSSL_EVP_MD_CTX *ctx, const WOLFSSL_EVP_MD *type); WOLFSSL_API int wolfSSL_EVP_VerifyUpdate(WOLFSSL_EVP_MD_CTX *ctx, const void *data, size_t len); @@ -640,6 +698,8 @@ WOLFSSL_LOCAL int wolfSSL_EVP_get_hashinfo(const WOLFSSL_EVP_MD* evp, #define EVP_CIPH_CCM_MODE WOLFSSL_EVP_CIPH_CCM_MODE #define EVP_CIPH_XTS_MODE WOLFSSL_EVP_CIPH_XTS_MODE +#define EVP_CIPH_FLAG_AEAD_CIPHER WOLFSSL_EVP_CIPH_FLAG_AEAD_CIPHER + #define WOLFSSL_EVP_CIPH_MODE 0x0007 #define WOLFSSL_EVP_CIPH_STREAM_CIPHER 0x0 #define WOLFSSL_EVP_CIPH_ECB_MODE 0x1 @@ -650,6 +710,7 @@ WOLFSSL_LOCAL int wolfSSL_EVP_get_hashinfo(const WOLFSSL_EVP_MD* evp, #define WOLFSSL_EVP_CIPH_GCM_MODE 0x6 #define WOLFSSL_EVP_CIPH_CCM_MODE 0x7 #define WOLFSSL_EVP_CIPH_XTS_MODE 0x10 +#define WOLFSSL_EVP_CIPH_FLAG_AEAD_CIPHER 0x20 #define WOLFSSL_EVP_CIPH_NO_PADDING 0x100 #define EVP_CIPH_VARIABLE_LENGTH 0x200 #define WOLFSSL_EVP_CIPH_TYPE_INIT 0xff @@ -660,6 +721,7 @@ typedef WOLFSSL_EVP_MD EVP_MD; typedef WOLFSSL_EVP_CIPHER EVP_CIPHER; typedef WOLFSSL_EVP_MD_CTX EVP_MD_CTX; typedef WOLFSSL_EVP_CIPHER_CTX EVP_CIPHER_CTX; +typedef WOLFSSL_ASN1_PCTX ASN1_PCTX; #ifndef NO_MD4 #define EVP_md4 wolfSSL_EVP_md4 @@ -667,14 +729,15 @@ typedef WOLFSSL_EVP_CIPHER_CTX EVP_CIPHER_CTX; #ifndef NO_MD5 #define EVP_md5 wolfSSL_EVP_md5 #endif -#define EVP_sha1 wolfSSL_EVP_sha1 -#define EVP_mdc2 wolfSSL_EVP_mdc2 -#define EVP_dds1 wolfSSL_EVP_sha1 -#define EVP_sha224 wolfSSL_EVP_sha224 -#define EVP_sha256 wolfSSL_EVP_sha256 -#define EVP_sha384 wolfSSL_EVP_sha384 -#define EVP_sha512 wolfSSL_EVP_sha512 -#define EVP_ripemd160 wolfSSL_EVP_ripemd160 +#define EVP_sha1 wolfSSL_EVP_sha1 +#define EVP_mdc2 wolfSSL_EVP_mdc2 +#define EVP_dds1 wolfSSL_EVP_sha1 +#define EVP_sha224 wolfSSL_EVP_sha224 +#define EVP_sha256 wolfSSL_EVP_sha256 +#define EVP_sha384 wolfSSL_EVP_sha384 +#define EVP_sha512 wolfSSL_EVP_sha512 +#define EVP_ripemd160 wolfSSL_EVP_ripemd160 +#define EVP_set_pw_prompt wolfSSL_EVP_set_pw_prompt #define EVP_sha3_224 wolfSSL_EVP_sha3_224 #define EVP_sha3_256 wolfSSL_EVP_sha3_256 @@ -727,7 +790,11 @@ typedef WOLFSSL_EVP_CIPHER_CTX EVP_CIPHER_CTX; #define EVP_MD_CTX_type wolfSSL_EVP_MD_CTX_type #define EVP_MD_CTX_size wolfSSL_EVP_MD_CTX_size #define EVP_MD_CTX_block_size wolfSSL_EVP_MD_CTX_block_size +#define EVP_MD_block_size wolfSSL_EVP_MD_block_size #define EVP_MD_type wolfSSL_EVP_MD_type +#ifndef NO_WOLFSSL_STUB +#define EVP_MD_CTX_set_flags(...) +#endif #define EVP_Digest wolfSSL_EVP_Digest #define EVP_DigestInit wolfSSL_EVP_DigestInit @@ -825,11 +892,14 @@ typedef WOLFSSL_EVP_CIPHER_CTX EVP_CIPHER_CTX; #define EVP_PKEY_free wolfSSL_EVP_PKEY_free #define EVP_PKEY_up_ref wolfSSL_EVP_PKEY_up_ref #define EVP_PKEY_size wolfSSL_EVP_PKEY_size +#define EVP_PKEY_copy_parameters wolfSSL_EVP_PKEY_copy_parameters #define EVP_PKEY_missing_parameters wolfSSL_EVP_PKEY_missing_parameters #define EVP_PKEY_cmp wolfSSL_EVP_PKEY_cmp #define EVP_PKEY_type wolfSSL_EVP_PKEY_type #define EVP_PKEY_base_id wolfSSL_EVP_PKEY_base_id +#define EVP_PKEY_get_default_digest_nid wolfSSL_EVP_PKEY_get_default_digest_nid #define EVP_PKEY_id wolfSSL_EVP_PKEY_id +#define EVP_PKEY_CTX_ctrl_str wolfSSL_EVP_PKEY_CTX_ctrl_str #define EVP_SignFinal wolfSSL_EVP_SignFinal #define EVP_SignInit wolfSSL_EVP_SignInit #define EVP_SignInit_ex wolfSSL_EVP_SignInit_ex @@ -887,6 +957,7 @@ typedef WOLFSSL_EVP_CIPHER_CTX EVP_CIPHER_CTX; #define EVP_CTRL_GCM_SET_TAG EVP_CTRL_AEAD_SET_TAG #define EVP_CTRL_GCM_SET_IV_FIXED EVP_CTRL_AEAD_SET_IV_FIXED +#define EVP_PKEY_print_public wolfSSL_EVP_PKEY_print_public #define EVP_PKEY_print_private(arg1, arg2, arg3, arg4) #ifndef EVP_MAX_MD_SIZE @@ -917,10 +988,8 @@ typedef WOLFSSL_EVP_CIPHER_CTX EVP_CIPHER_CTX; #define EVP_R_PRIVATE_KEY_DECODE_ERROR (-MIN_CODE_E + 100 + 4) #define EVP_PKEY_NONE NID_undef -#define EVP_PKEY_RSA 6 -#define EVP_PKEY_RSA2 19 #define EVP_PKEY_DH 28 -#define EVP_CIPHER_mode WOLFSSL_CIPHER_mode +#define EVP_CIPHER_mode WOLFSSL_EVP_CIPHER_mode /* WOLFSSL_EVP_CIPHER is just the string name of the cipher */ #define EVP_CIPHER_name(x) x #define EVP_MD_CTX_reset wolfSSL_EVP_MD_CTX_cleanup @@ -928,6 +997,25 @@ typedef WOLFSSL_EVP_CIPHER_CTX EVP_CIPHER_CTX; #define EVP_MD_name(x) x #define EVP_CIPHER_nid wolfSSL_EVP_CIPHER_nid +/* Base64 encoding/decoding APIs */ +#if defined(WOLFSSL_BASE64_ENCODE) || defined(WOLFSSL_BASE64_DECODE) +#define EVP_ENCODE_CTX WOLFSSL_EVP_ENCODE_CTX +#define EVP_ENCODE_CTX_new wolfSSL_EVP_ENCODE_CTX_new +#define EVP_ENCODE_CTX_free wolfSSL_EVP_ENCODE_CTX_free +#endif /* WOLFSSL_BASE64_ENCODE || WOLFSSL_BASE64_DECODE*/ +#if defined(WOLFSSL_BASE64_ENCODE) +#define EVP_EncodeInit wolfSSL_EVP_EncodeInit +#define EVP_EncodeUpdate wolfSSL_EVP_EncodeUpdate +#define EVP_EncodeFinal wolfSSL_EVP_EncodeFinal +#endif /* WOLFSSL_BASE64_ENCODE */ +#if defined(WOLFSSL_BASE64_DECODE) +#define EVP_DecodeInit wolfSSL_EVP_DecodeInit +#define EVP_DecodeUpdate wolfSSL_EVP_DecodeUpdate +#define EVP_DecodeFinal wolfSSL_EVP_DecodeFinal +#endif /* WOLFSSL_BASE64_DECODE */ + +#define EVP_blake2b512 wolfSSL_EVP_blake2b512 +#define EVP_blake2s256 wolfSSL_EVP_blake2s256 WOLFSSL_API void printPKEY(WOLFSSL_EVP_PKEY *k); @@ -935,6 +1023,6 @@ WOLFSSL_API void printPKEY(WOLFSSL_EVP_PKEY *k); } /* extern "C" */ #endif -#include +#include #endif /* WOLFSSL_EVP_H_ */ diff --git a/source/libwolfssl/openssl/hmac.h b/source/libwolfssl/openssl/hmac.h index bf0e540b..a139343e 100644 --- a/source/libwolfssl/openssl/hmac.h +++ b/source/libwolfssl/openssl/hmac.h @@ -1,6 +1,6 @@ /* hmac.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -29,15 +29,23 @@ #ifndef WOLFSSL_HMAC_H_ #define WOLFSSL_HMAC_H_ -#include +#include #ifdef WOLFSSL_PREFIX #include "prefix_hmac.h" #endif -#include -#include -#include +#include + +typedef struct WOLFSSL_HMAC_CTX { + Hmac hmac; + int type; + word32 save_ipad[WC_HMAC_BLOCK_SIZE / sizeof(word32)]; /* same block size all*/ + word32 save_opad[WC_HMAC_BLOCK_SIZE / sizeof(word32)]; +} WOLFSSL_HMAC_CTX; + +#include +#include #ifdef __cplusplus extern "C" { @@ -49,22 +57,13 @@ WOLFSSL_API unsigned char* wolfSSL_HMAC(const WOLFSSL_EVP_MD* evp_md, const unsigned char* d, int n, unsigned char* md, unsigned int* md_len); - -typedef struct WOLFSSL_HMAC_CTX { - Hmac hmac; - int type; - word32 save_ipad[WC_HMAC_BLOCK_SIZE / sizeof(word32)]; /* same block size all*/ - word32 save_opad[WC_HMAC_BLOCK_SIZE / sizeof(word32)]; -} WOLFSSL_HMAC_CTX; - - WOLFSSL_API WOLFSSL_HMAC_CTX* wolfSSL_HMAC_CTX_new(void); WOLFSSL_API int wolfSSL_HMAC_CTX_Init(WOLFSSL_HMAC_CTX* ctx); WOLFSSL_API int wolfSSL_HMAC_CTX_copy(WOLFSSL_HMAC_CTX* des, WOLFSSL_HMAC_CTX* src); WOLFSSL_LOCAL int wolfSSL_HmacCopy(Hmac* des, Hmac* src); WOLFSSL_API int wolfSSL_HMAC_Init(WOLFSSL_HMAC_CTX* ctx, const void* key, - int keylen, const EVP_MD* type); + int keylen, const WOLFSSL_EVP_MD* type); WOLFSSL_API int wolfSSL_HMAC_Init_ex(WOLFSSL_HMAC_CTX* ctx, const void* key, int keylen, const EVP_MD* type, WOLFSSL_ENGINE* e); WOLFSSL_API int wolfSSL_HMAC_Update(WOLFSSL_HMAC_CTX* ctx, @@ -75,6 +74,7 @@ WOLFSSL_API int wolfSSL_HMAC_cleanup(WOLFSSL_HMAC_CTX* ctx); WOLFSSL_API void wolfSSL_HMAC_CTX_cleanup(WOLFSSL_HMAC_CTX* ctx); WOLFSSL_API void wolfSSL_HMAC_CTX_free(WOLFSSL_HMAC_CTX* ctx); WOLFSSL_API size_t wolfSSL_HMAC_size(const WOLFSSL_HMAC_CTX *ctx); +WOLFSSL_API const WOLFSSL_EVP_MD *wolfSSL_HMAC_CTX_get_md(const WOLFSSL_HMAC_CTX *ctx); typedef struct WOLFSSL_HMAC_CTX HMAC_CTX; @@ -92,6 +92,7 @@ typedef struct WOLFSSL_HMAC_CTX HMAC_CTX; #define HMAC_Final wolfSSL_HMAC_Final #define HMAC_cleanup wolfSSL_HMAC_cleanup #define HMAC_size wolfSSL_HMAC_size +#define HMAC_CTX_get_md wolfSSL_HMAC_CTX_get_md #ifdef __cplusplus diff --git a/source/libwolfssl/openssl/lhash.h b/source/libwolfssl/openssl/lhash.h index 01f8535f..cbf62991 100644 --- a/source/libwolfssl/openssl/lhash.h +++ b/source/libwolfssl/openssl/lhash.h @@ -1,2 +1,64 @@ +/* lhash.h + * + * Copyright (C) 2006-2021 wolfSSL Inc. + * + * This file is part of wolfSSL. + * + * wolfSSL is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * wolfSSL is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA + */ + /* lhash.h for openSSL */ +#ifndef WOLFSSL_lhash_H_ +#define WOLFSSL_lhash_H_ + +#ifdef __cplusplus + extern "C" { +#endif + +#include + +#ifdef OPENSSL_ALL +#define IMPLEMENT_LHASH_HASH_FN(name, type) \ + unsigned long wolfSSL_##name##_LHASH_HASH(const void *arg) \ + { \ + const type *a = arg; \ + return name##_hash(a); \ + } +#define IMPLEMENT_LHASH_COMP_FN(name, type) \ + int wolfSSL_##name##_LHASH_COMP(const void *p1, const void *p2) \ + { \ + const type *_p1 = p1; \ + const type *_p2 = p2; \ + return name##_cmp(_p1, _p2); \ + } + +#define LHASH_HASH_FN(name) wolfSSL_##name##_LHASH_HASH +#define LHASH_COMP_FN(name) wolfSSL_##name##_LHASH_COMP + +WOLFSSL_API unsigned long wolfSSL_LH_strhash(const char *str); + +WOLFSSL_API void *wolfSSL_lh_retrieve(WOLFSSL_STACK *sk, void *data); + +#define lh_strhash wolfSSL_LH_strhash + +#endif + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* WOLFSSL_lhash_H_ */ diff --git a/source/libwolfssl/openssl/md4.h b/source/libwolfssl/openssl/md4.h index eb539eaa..52aaa082 100644 --- a/source/libwolfssl/openssl/md4.h +++ b/source/libwolfssl/openssl/md4.h @@ -1,6 +1,6 @@ /* md4.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -23,7 +23,7 @@ #ifndef WOLFSSL_MD4_H_ #define WOLFSSL_MD4_H_ -#include +#include #ifndef NO_MD4 diff --git a/source/libwolfssl/openssl/md5.h b/source/libwolfssl/openssl/md5.h index 9534091e..086fa800 100644 --- a/source/libwolfssl/openssl/md5.h +++ b/source/libwolfssl/openssl/md5.h @@ -1,6 +1,6 @@ /* md5.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -25,11 +25,11 @@ #ifndef WOLFSSL_MD5_H_ #define WOLFSSL_MD5_H_ -#include +#include #ifndef NO_MD5 -#include +#include #ifdef WOLFSSL_PREFIX #include "prefix_md5.h" @@ -52,13 +52,14 @@ typedef struct WOLFSSL_MD5_CTX { WOLFSSL_API int wolfSSL_MD5_Init(WOLFSSL_MD5_CTX*); WOLFSSL_API int wolfSSL_MD5_Update(WOLFSSL_MD5_CTX*, const void*, unsigned long); WOLFSSL_API int wolfSSL_MD5_Final(unsigned char*, WOLFSSL_MD5_CTX*); - +WOLFSSL_API int wolfSSL_MD5_Transform(WOLFSSL_MD5_CTX*, const unsigned char*); typedef WOLFSSL_MD5_CTX MD5_CTX; #define MD5_Init wolfSSL_MD5_Init #define MD5_Update wolfSSL_MD5_Update #define MD5_Final wolfSSL_MD5_Final +#define MD5_Transform wolfSSL_MD5_Transform #ifdef OPENSSL_EXTRA_BSD #define MD5Init wolfSSL_MD5_Init diff --git a/source/libwolfssl/openssl/obj_mac.h b/source/libwolfssl/openssl/obj_mac.h index 6d0f9004..0544d6b1 100644 --- a/source/libwolfssl/openssl/obj_mac.h +++ b/source/libwolfssl/openssl/obj_mac.h @@ -1,6 +1,6 @@ /* obj_mac.h * - * Copyright (C) 2006-2017 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -42,6 +42,8 @@ #define NID_sect571k1 733 #define NID_sect571r1 734 +/* the definition is for Qt Unit test */ +#define SN_jurisdictionCountryName "jurisdictionC" #ifdef __cplusplus } /* extern "C" */ #endif diff --git a/source/libwolfssl/openssl/objects.h b/source/libwolfssl/openssl/objects.h index 49a6c9d9..eedf5ecf 100644 --- a/source/libwolfssl/openssl/objects.h +++ b/source/libwolfssl/openssl/objects.h @@ -1,6 +1,6 @@ /* objects.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -23,11 +23,11 @@ #ifndef WOLFSSL_OBJECTS_H_ #define WOLFSSL_OBJECTS_H_ -#include -//#include +#include +//#include #ifndef OPENSSL_EXTRA_SSL_GUARD #define OPENSSL_EXTRA_SSL_GUARD -#include +#include #endif /* OPENSSL_EXTRA_SSL_GUARD */ #ifdef __cplusplus diff --git a/source/libwolfssl/openssl/ocsp.h b/source/libwolfssl/openssl/ocsp.h index 7e2e76f5..e0f97c16 100644 --- a/source/libwolfssl/openssl/ocsp.h +++ b/source/libwolfssl/openssl/ocsp.h @@ -1,6 +1,6 @@ /* ocsp.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -25,11 +25,12 @@ #define WOLFSSL_OCSP_H_ #ifdef HAVE_OCSP -#include +#include #define OCSP_REQUEST OcspRequest #define OCSP_RESPONSE OcspResponse #define OCSP_BASICRESP WOLFSSL_OCSP_BASICRESP +#define OCSP_SINGLERESP WOLFSSL_OCSP_SINGLERESP #define OCSP_CERTID WOLFSSL_OCSP_CERTID #define OCSP_ONEREQ WOLFSSL_OCSP_ONEREQ @@ -76,6 +77,13 @@ #define i2d_OCSP_REQUEST_bio wolfSSL_i2d_OCSP_REQUEST_bio +#define i2d_OCSP_CERTID wolfSSL_i2d_OCSP_CERTID +#define OCSP_SINGLERESP_get0_id wolfSSL_OCSP_SINGLERESP_get0_id +#define OCSP_id_cmp wolfSSL_OCSP_id_cmp +#define OCSP_single_get0_status wolfSSL_OCSP_single_get0_status +#define OCSP_resp_count wolfSSL_OCSP_resp_count +#define OCSP_resp_get0 wolfSSL_OCSP_resp_get0 + #endif /* HAVE_OCSP */ #endif /* WOLFSSL_OCSP_H_ */ diff --git a/source/libwolfssl/openssl/opensslv.h b/source/libwolfssl/openssl/opensslv.h index 7f82800d..fb2fc0b8 100644 --- a/source/libwolfssl/openssl/opensslv.h +++ b/source/libwolfssl/openssl/opensslv.h @@ -1,6 +1,6 @@ /* opensslv.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -26,12 +26,19 @@ /* api version compatibility */ -#if defined(WOLFSSL_APACHE_HTTPD) +#if defined(OPENSSL_VERSION_NUMBER) && (OPENSSL_VERSION_NUMBER == 0x0090810fL) ||\ + defined(OPENSSL_VERSION_NUMBER) && (OPENSSL_VERSION_NUMBER == 0x10100000L) ||\ + defined(OPENSSL_VERSION_NUMBER) && (OPENSSL_VERSION_NUMBER == 0x10001040L) + /* valid version */ +#elif defined(WOLFSSL_APACHE_HTTPD) || defined(HAVE_LIBEST) || defined(WOLFSSL_BIND) /* For Apache httpd, Use 1.1.0 compatibility */ #define OPENSSL_VERSION_NUMBER 0x10100000L +#elif defined(WOLFSSL_QT) + #define OPENSSL_VERSION_NUMBER 0x10101000L +#elif defined(WOLFSSL_HAPROXY) + #define OPENSSL_VERSION_NUMBER 0x1010000fL #elif defined(OPENSSL_ALL) || defined(HAVE_STUNNEL) || defined(HAVE_LIGHTY) || \ - defined(WOLFSSL_NGINX) || defined(WOLFSSL_HAPROXY) || \ - defined(WOLFSSL_OPENSSH) || defined(WOLFSSL_QT) || defined(WOLFSSL_OPENVPN) + defined(WOLFSSL_NGINX) || defined(WOLFSSL_OPENSSH) || defined(WOLFSSL_OPENVPN) /* version number can be increased for Lighty after compatibility for ECDH is added */ #define OPENSSL_VERSION_NUMBER 0x10001040L diff --git a/source/libwolfssl/openssl/ossl_typ.h b/source/libwolfssl/openssl/ossl_typ.h index 6ed23a59..a6117356 100644 --- a/source/libwolfssl/openssl/ossl_typ.h +++ b/source/libwolfssl/openssl/ossl_typ.h @@ -1,6 +1,6 @@ /* ossl_typ.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -27,6 +27,6 @@ #ifndef WOLFSSL_OSSL_TYP_H_ #define WOLFSSL_OSSL_TYP_H_ -#include +#include #endif /* !WOLFSSL_OSSL_TYP_H_ */ diff --git a/source/libwolfssl/openssl/pem.h b/source/libwolfssl/openssl/pem.h index 02a22a85..50cfc276 100644 --- a/source/libwolfssl/openssl/pem.h +++ b/source/libwolfssl/openssl/pem.h @@ -1,6 +1,6 @@ /* pem.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -29,11 +29,11 @@ #ifndef WOLFSSL_PEM_H_ #define WOLFSSL_PEM_H_ -#include -#include -#include -#include -#include +#include +#include +#include +#include +#include #ifdef __cplusplus extern "C" { @@ -242,6 +242,9 @@ int wolfSSL_PEM_write_DHparams(XFILE fp, WOLFSSL_DH* dh); #define PEM_write_ECPrivateKey wolfSSL_PEM_write_ECPrivateKey #define PEM_read_bio_ECPrivateKey wolfSSL_PEM_read_bio_ECPrivateKey #define PEM_read_bio_EC_PUBKEY wolfSSL_PEM_read_bio_EC_PUBKEY +#ifndef NO_WOLFSSL_STUB +#define PEM_write_bio_ECPKParameters(...) 0 +#endif /* EVP_KEY */ #define PEM_read_bio_PrivateKey wolfSSL_PEM_read_bio_PrivateKey #define PEM_read_PUBKEY wolfSSL_PEM_read_PUBKEY diff --git a/source/libwolfssl/openssl/pkcs12.h b/source/libwolfssl/openssl/pkcs12.h index 8a20f267..5eee8706 100644 --- a/source/libwolfssl/openssl/pkcs12.h +++ b/source/libwolfssl/openssl/pkcs12.h @@ -1,6 +1,6 @@ /* pkcs12.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -22,8 +22,8 @@ /* pkcs12.h for openssl */ -#include -#include +#include +#include #ifndef WOLFSSL_PKCS12_COMPAT_H_ #define WOLFSSL_PKCS12_COMPAT_H_ @@ -42,6 +42,7 @@ /* wolfSSL level using structs from ssl.h and calls down to wolfCrypt */ #define d2i_PKCS12_bio wolfSSL_d2i_PKCS12_bio #define PKCS12_parse wolfSSL_PKCS12_parse +#define PKCS12_verify_mac wolfSSL_PKCS12_verify_mac #define PKCS12_create wolfSSL_PKCS12_create #define PKCS12_PBE_add wolfSSL_PKCS12_PBE_add diff --git a/source/libwolfssl/openssl/pkcs7.h b/source/libwolfssl/openssl/pkcs7.h index 43cbd4da..1ea4330c 100644 --- a/source/libwolfssl/openssl/pkcs7.h +++ b/source/libwolfssl/openssl/pkcs7.h @@ -1,6 +1,6 @@ /* pkcs7.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -25,8 +25,8 @@ #ifndef WOLFSSL_PKCS7_H_ #define WOLFSSL_PKCS7_H_ -#include -#include +#include +#include #ifdef __cplusplus extern "C" { @@ -37,12 +37,12 @@ #define PKCS7_NOINTERN 0x0010 #define PKCS7_NOVERIFY 0x0020 - typedef struct WOLFSSL_PKCS7 { PKCS7 pkcs7; unsigned char* data; int len; + WOLFSSL_STACK* certs; } WOLFSSL_PKCS7; @@ -52,12 +52,22 @@ WOLFSSL_API void wolfSSL_PKCS7_free(PKCS7* p7); WOLFSSL_API void wolfSSL_PKCS7_SIGNED_free(PKCS7_SIGNED* p7); WOLFSSL_API PKCS7* wolfSSL_d2i_PKCS7(PKCS7** p7, const unsigned char** in, int len); +WOLFSSL_LOCAL PKCS7* wolfSSL_d2i_PKCS7_ex(PKCS7** p7, const unsigned char** in, + int len, byte* content, word32 contentSz); WOLFSSL_API PKCS7* wolfSSL_d2i_PKCS7_bio(WOLFSSL_BIO* bio, PKCS7** p7); +WOLFSSL_API int wolfSSL_i2d_PKCS7_bio(WOLFSSL_BIO *bio, PKCS7 *p7); WOLFSSL_API int wolfSSL_PKCS7_verify(PKCS7* p7, WOLFSSL_STACK* certs, WOLFSSL_X509_STORE* store, WOLFSSL_BIO* in, WOLFSSL_BIO* out, int flags); +WOLFSSL_API int wolfSSL_PKCS7_encode_certs(PKCS7* p7, WOLFSSL_STACK* certs, + WOLFSSL_BIO* out); +WOLFSSL_API WOLFSSL_STACK* wolfSSL_PKCS7_to_stack(PKCS7* pkcs7); WOLFSSL_API WOLFSSL_STACK* wolfSSL_PKCS7_get0_signers(PKCS7* p7, WOLFSSL_STACK* certs, int flags); WOLFSSL_API int wolfSSL_PEM_write_bio_PKCS7(WOLFSSL_BIO* bio, PKCS7* p7); +#if defined(HAVE_SMIME) +WOLFSSL_API PKCS7* wolfSSL_SMIME_read_PKCS7(WOLFSSL_BIO* in, WOLFSSL_BIO** bcont); +#endif /* HAVE_SMIME */ + #define PKCS7_new wolfSSL_PKCS7_new #define PKCS7_SIGNED_new wolfSSL_PKCS7_SIGNED_new @@ -65,9 +75,13 @@ WOLFSSL_API int wolfSSL_PEM_write_bio_PKCS7(WOLFSSL_BIO* bio, PKCS7* p7); #define PKCS7_SIGNED_free wolfSSL_PKCS7_SIGNED_free #define d2i_PKCS7 wolfSSL_d2i_PKCS7 #define d2i_PKCS7_bio wolfSSL_d2i_PKCS7_bio +#define i2d_PKCS7_bio wolfSSL_i2d_PKCS7_bio #define PKCS7_verify wolfSSL_PKCS7_verify #define PKCS7_get0_signers wolfSSL_PKCS7_get0_signers #define PEM_write_bio_PKCS7 wolfSSL_PEM_write_bio_PKCS7 +#if defined(HAVE_SMIME) +#define SMIME_read_PKCS7 wolfSSL_SMIME_read_PKCS7 +#endif /* HAVE_SMIME */ #endif /* OPENSSL_ALL && HAVE_PKCS7 */ diff --git a/source/libwolfssl/openssl/rand.h b/source/libwolfssl/openssl/rand.h index 27552c63..c4dca87d 100644 --- a/source/libwolfssl/openssl/rand.h +++ b/source/libwolfssl/openssl/rand.h @@ -1,6 +1,6 @@ /* rand.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -21,7 +21,9 @@ /* rand.h for openSSL */ -#include -#include +#include +#include + +typedef WOLFSSL_RAND_METHOD RAND_METHOD; #define RAND_set_rand_method wolfSSL_RAND_set_rand_method diff --git a/source/libwolfssl/openssl/rc4.h b/source/libwolfssl/openssl/rc4.h index 3dec6f27..91ac416a 100644 --- a/source/libwolfssl/openssl/rc4.h +++ b/source/libwolfssl/openssl/rc4.h @@ -1,6 +1,6 @@ /* rc4.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -28,8 +28,8 @@ #ifndef WOLFSSL_RC4_COMPAT_H_ #define WOLFSSL_RC4_COMPAT_H_ -#include -#include /* included for size_t */ +#include +#include /* included for size_t */ #ifdef __cplusplus extern "C" { diff --git a/source/libwolfssl/openssl/ripemd.h b/source/libwolfssl/openssl/ripemd.h index e159f8e8..73ae5ae5 100644 --- a/source/libwolfssl/openssl/ripemd.h +++ b/source/libwolfssl/openssl/ripemd.h @@ -1,6 +1,6 @@ /* ripemd.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -25,7 +25,7 @@ #ifndef WOLFSSL_RIPEMD_H_ #define WOLFSSL_RIPEMD_H_ -#include +#include #ifdef __cplusplus extern "C" { diff --git a/source/libwolfssl/openssl/rsa.h b/source/libwolfssl/openssl/rsa.h index ef4d977d..af3f2ddf 100644 --- a/source/libwolfssl/openssl/rsa.h +++ b/source/libwolfssl/openssl/rsa.h @@ -1,6 +1,6 @@ /* rsa.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -25,9 +25,9 @@ #ifndef WOLFSSL_RSA_H_ #define WOLFSSL_RSA_H_ -#include -#include -#include +#include +#include +#include #ifdef __cplusplus extern "C" { @@ -77,19 +77,22 @@ typedef struct WOLFSSL_RSA { WOLFSSL_BIGNUM* iqmp; /* u */ void* heap; void* internal; /* our RSA */ - char inSet; /* internal set from external ? */ - char exSet; /* external set from internal ? */ - char ownRng; /* flag for if the rng should be free'd */ #if defined(OPENSSL_EXTRA) WOLFSSL_RSA_METHOD* meth; #endif #if defined(HAVE_EX_DATA) WOLFSSL_CRYPTO_EX_DATA ex_data; /* external data */ #endif -#if defined(OPENSSL_EXTRA) || defined(OPENSSL_ALL) +#if defined(OPENSSL_EXTRA_X509_SMALL) || defined(OPENSSL_EXTRA) wolfSSL_Mutex refMutex; /* ref count mutex */ int refCount; /* reference count */ #endif + word16 pkcs8HeaderSz; + + /* bits */ + byte inSet:1; /* internal set from external ? */ + byte exSet:1; /* external set from internal ? */ + byte ownRng:1; /* flag for if the rng should be free'd */ } WOLFSSL_RSA; #endif @@ -107,19 +110,27 @@ WOLFSSL_API int wolfSSL_RSA_public_encrypt(int len, const unsigned char* fr, unsigned char* to, WOLFSSL_RSA*, int padding); WOLFSSL_API int wolfSSL_RSA_private_decrypt(int len, const unsigned char* fr, unsigned char* to, WOLFSSL_RSA*, int padding); -WOLFSSL_API int wolfSSL_RSA_private_encrypt(int len, unsigned char* in, +WOLFSSL_API int wolfSSL_RSA_private_encrypt(int len, const unsigned char* in, unsigned char* out, WOLFSSL_RSA* rsa, int padding); WOLFSSL_API int wolfSSL_RSA_size(const WOLFSSL_RSA*); +WOLFSSL_API int wolfSSL_RSA_bits(const WOLFSSL_RSA*); WOLFSSL_API int wolfSSL_RSA_sign(int type, const unsigned char* m, unsigned int mLen, unsigned char* sigRet, unsigned int* sigLen, WOLFSSL_RSA*); WOLFSSL_API int wolfSSL_RSA_sign_ex(int type, const unsigned char* m, unsigned int mLen, unsigned char* sigRet, unsigned int* sigLen, WOLFSSL_RSA*, int); +WOLFSSL_API int wolfSSL_RSA_sign_generic_padding(int type, const unsigned char* m, + unsigned int mLen, unsigned char* sigRet, + unsigned int* sigLen, WOLFSSL_RSA*, int, int); WOLFSSL_API int wolfSSL_RSA_verify(int type, const unsigned char* m, unsigned int mLen, const unsigned char* sig, unsigned int sigLen, WOLFSSL_RSA*); +WOLFSSL_API int wolfSSL_RSA_verify_ex(int type, const unsigned char* m, + unsigned int mLen, const unsigned char* sig, + unsigned int sigLen, WOLFSSL_RSA* rsa, + int padding); WOLFSSL_API int wolfSSL_RSA_public_decrypt(int flen, const unsigned char* from, unsigned char* to, WOLFSSL_RSA*, int padding); WOLFSSL_API int wolfSSL_RSA_GenAdd(WOLFSSL_RSA*); @@ -133,18 +144,35 @@ WOLFSSL_API int wolfSSL_RSA_set_method(WOLFSSL_RSA *rsa, WOLFSSL_RSA_METHOD *met WOLFSSL_API const WOLFSSL_RSA_METHOD* wolfSSL_RSA_get_method(const WOLFSSL_RSA *rsa); WOLFSSL_API const WOLFSSL_RSA_METHOD* wolfSSL_RSA_get_default_method(void); +WOLFSSL_API void wolfSSL_RSA_get0_crt_params(const WOLFSSL_RSA *r, + const WOLFSSL_BIGNUM **dmp1, + const WOLFSSL_BIGNUM **dmq1, + const WOLFSSL_BIGNUM **iqmp); +WOLFSSL_API int wolfSSL_RSA_set0_crt_params(WOLFSSL_RSA *r, WOLFSSL_BIGNUM *dmp1, + WOLFSSL_BIGNUM *dmq1, WOLFSSL_BIGNUM *iqmp); +WOLFSSL_API void wolfSSL_RSA_get0_factors(const WOLFSSL_RSA *r, const WOLFSSL_BIGNUM **p, + const WOLFSSL_BIGNUM **q); +WOLFSSL_API int wolfSSL_RSA_set0_factors(WOLFSSL_RSA *r, WOLFSSL_BIGNUM *p, WOLFSSL_BIGNUM *q); WOLFSSL_API void wolfSSL_RSA_get0_key(const WOLFSSL_RSA *r, const WOLFSSL_BIGNUM **n, const WOLFSSL_BIGNUM **e, const WOLFSSL_BIGNUM **d); WOLFSSL_API int wolfSSL_RSA_set0_key(WOLFSSL_RSA *r, WOLFSSL_BIGNUM *n, WOLFSSL_BIGNUM *e, WOLFSSL_BIGNUM *d); WOLFSSL_API int wolfSSL_RSA_flags(const WOLFSSL_RSA *r); WOLFSSL_API void wolfSSL_RSA_set_flags(WOLFSSL_RSA *r, int flags); +WOLFSSL_API void wolfSSL_RSA_clear_flags(WOLFSSL_RSA *r, int flags); +WOLFSSL_API int wolfSSL_RSA_test_flags(const WOLFSSL_RSA *r, int flags); WOLFSSL_API WOLFSSL_RSA* wolfSSL_RSAPublicKey_dup(WOLFSSL_RSA *rsa); WOLFSSL_API void* wolfSSL_RSA_get_ex_data(const WOLFSSL_RSA *rsa, int idx); WOLFSSL_API int wolfSSL_RSA_set_ex_data(WOLFSSL_RSA *rsa, int idx, void *data); - +#ifdef HAVE_EX_DATA_CLEANUP_HOOKS +WOLFSSL_API int wolfSSL_RSA_set_ex_data_with_cleanup( + WOLFSSL_RSA *rsa, + int idx, + void *data, + wolfSSL_ex_data_cleanup_routine_t cleanup_routine); +#endif #define WOLFSSL_RSA_LOAD_PRIVATE 1 #define WOLFSSL_RSA_LOAD_PUBLIC 2 @@ -177,10 +205,16 @@ WOLFSSL_API int wolfSSL_RSA_set_ex_data(WOLFSSL_RSA *rsa, int idx, void *data); #define RSA_get_default_method wolfSSL_RSA_get_default_method #define RSA_get_method wolfSSL_RSA_get_method #define RSA_set_method wolfSSL_RSA_set_method +#define RSA_get0_crt_params wolfSSL_RSA_get0_crt_params +#define RSA_set0_crt_params wolfSSL_RSA_set0_crt_params +#define RSA_get0_factors wolfSSL_RSA_get0_factors +#define RSA_set0_factors wolfSSL_RSA_set0_factors #define RSA_get0_key wolfSSL_RSA_get0_key #define RSA_set0_key wolfSSL_RSA_set0_key #define RSA_flags wolfSSL_RSA_flags #define RSA_set_flags wolfSSL_RSA_set_flags +#define RSA_clear_flags wolfSSL_RSA_clear_flags +#define RSA_test_flags wolfSSL_RSA_test_flags #define RSAPublicKey_dup wolfSSL_RSAPublicKey_dup #define RSA_get_ex_data wolfSSL_RSA_get_ex_data diff --git a/source/libwolfssl/openssl/sha.h b/source/libwolfssl/openssl/sha.h index d589754b..172e07dc 100644 --- a/source/libwolfssl/openssl/sha.h +++ b/source/libwolfssl/openssl/sha.h @@ -1,6 +1,6 @@ /* sha.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -25,8 +25,8 @@ #ifndef WOLFSSL_SHA_H_ #define WOLFSSL_SHA_H_ -#include -#include +#include +#include #ifdef WOLFSSL_PREFIX #include "prefix_sha.h" @@ -52,12 +52,14 @@ typedef struct WOLFSSL_SHA_CTX { WOLFSSL_API int wolfSSL_SHA_Init(WOLFSSL_SHA_CTX*); WOLFSSL_API int wolfSSL_SHA_Update(WOLFSSL_SHA_CTX*, const void*, unsigned long); WOLFSSL_API int wolfSSL_SHA_Final(unsigned char*, WOLFSSL_SHA_CTX*); - +WOLFSSL_API int wolfSSL_SHA_Transform(WOLFSSL_SHA_CTX*, + const unsigned char *data); /* SHA1 points to above, shouldn't use SHA0 ever */ WOLFSSL_API int wolfSSL_SHA1_Init(WOLFSSL_SHA_CTX*); WOLFSSL_API int wolfSSL_SHA1_Update(WOLFSSL_SHA_CTX*, const void*, unsigned long); WOLFSSL_API int wolfSSL_SHA1_Final(unsigned char*, WOLFSSL_SHA_CTX*); - +WOLFSSL_API int wolfSSL_SHA1_Transform(WOLFSSL_SHA_CTX*, + const unsigned char *data); enum { SHA_DIGEST_LENGTH = 20 }; @@ -68,11 +70,20 @@ typedef WOLFSSL_SHA_CTX SHA_CTX; #define SHA_Init wolfSSL_SHA_Init #define SHA_Update wolfSSL_SHA_Update #define SHA_Final wolfSSL_SHA_Final +#define SHA_Transform wolfSSL_SHA_Transform + +#if defined(NO_OLD_SHA_NAMES) && !defined(HAVE_SELFTEST) && \ + (!defined(HAVE_FIPS) || \ + (defined(HAVE_FIPS_VERSION) && HAVE_FIPS_VERSION > 2)) + /* SHA is only available in non-fips mode or fips version > 2 mode + * because of SHA enum in FIPS build. */ + #define SHA wolfSSL_SHA1 +#endif #define SHA1_Init wolfSSL_SHA1_Init #define SHA1_Update wolfSSL_SHA1_Update #define SHA1_Final wolfSSL_SHA1_Final - +#define SHA1_Transform wolfSSL_SHA1_Transform #ifdef WOLFSSL_SHA224 @@ -99,6 +110,13 @@ typedef WOLFSSL_SHA224_CTX SHA224_CTX; #define SHA224_Init wolfSSL_SHA224_Init #define SHA224_Update wolfSSL_SHA224_Update #define SHA224_Final wolfSSL_SHA224_Final +#if defined(NO_OLD_SHA_NAMES) && !defined(HAVE_SELFTEST) && \ + (!defined(HAVE_FIPS) || \ + (defined(HAVE_FIPS_VERSION) && HAVE_FIPS_VERSION > 2)) + /* SHA224 is only available in non-fips mode or fips version > 2 mode + * because of SHA224 enum in FIPS build. */ + #define SHA224 wolfSSL_SHA224 +#endif #endif /* WOLFSSL_SHA224 */ @@ -113,9 +131,10 @@ typedef struct WOLFSSL_SHA256_CTX { WOLFSSL_API int wolfSSL_SHA256_Init(WOLFSSL_SHA256_CTX*); WOLFSSL_API int wolfSSL_SHA256_Update(WOLFSSL_SHA256_CTX*, const void*, - unsigned long); + unsigned long); WOLFSSL_API int wolfSSL_SHA256_Final(unsigned char*, WOLFSSL_SHA256_CTX*); - +WOLFSSL_API int wolfSSL_SHA256_Transform(WOLFSSL_SHA256_CTX*, + const unsigned char *data); enum { SHA256_DIGEST_LENGTH = 32 }; @@ -126,6 +145,8 @@ typedef WOLFSSL_SHA256_CTX SHA256_CTX; #define SHA256_Init wolfSSL_SHA256_Init #define SHA256_Update wolfSSL_SHA256_Update #define SHA256_Final wolfSSL_SHA256_Final +#define SHA256_Transform wolfSSL_SHA256_Transform + #if defined(NO_OLD_SHA_NAMES) && !defined(HAVE_FIPS) && !defined(HAVE_SELFTEST) /* SHA256 is only available in non-fips mode because of SHA256 enum in FIPS * build. */ @@ -137,7 +158,7 @@ typedef WOLFSSL_SHA256_CTX SHA256_CTX; typedef struct WOLFSSL_SHA384_CTX { /* big enough to hold wolfCrypt Sha384, but check on init */ - void* holder[(256 + WC_ASYNC_DEV_SIZE) / sizeof(void*)]; + void* holder[(268 + WC_ASYNC_DEV_SIZE) / sizeof(void*)]; } WOLFSSL_SHA384_CTX; WOLFSSL_API int wolfSSL_SHA384_Init(WOLFSSL_SHA384_CTX*); @@ -171,9 +192,10 @@ typedef struct WOLFSSL_SHA512_CTX { WOLFSSL_API int wolfSSL_SHA512_Init(WOLFSSL_SHA512_CTX*); WOLFSSL_API int wolfSSL_SHA512_Update(WOLFSSL_SHA512_CTX*, const void*, - unsigned long); + unsigned long); WOLFSSL_API int wolfSSL_SHA512_Final(unsigned char*, WOLFSSL_SHA512_CTX*); - +WOLFSSL_API int wolfSSL_SHA512_Transform(WOLFSSL_SHA512_CTX*, + const unsigned char*); enum { SHA512_DIGEST_LENGTH = 64 }; @@ -184,6 +206,7 @@ typedef WOLFSSL_SHA512_CTX SHA512_CTX; #define SHA512_Init wolfSSL_SHA512_Init #define SHA512_Update wolfSSL_SHA512_Update #define SHA512_Final wolfSSL_SHA512_Final +#define SHA512_Transform wolfSSL_SHA512_Transform #if defined(NO_OLD_SHA_NAMES) && !defined(HAVE_FIPS) && !defined(HAVE_SELFTEST) /* SHA512 is only available in non-fips mode because of SHA512 enum in FIPS * build. */ diff --git a/source/libwolfssl/openssl/sha3.h b/source/libwolfssl/openssl/sha3.h index c3b405b4..e906eefa 100644 --- a/source/libwolfssl/openssl/sha3.h +++ b/source/libwolfssl/openssl/sha3.h @@ -1,6 +1,6 @@ /* sha3.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -25,8 +25,8 @@ #ifndef WOLFSSL_SHA3_H_ #define WOLFSSL_SHA3_H_ -#include -#include +#include +#include #ifdef WOLFSSL_PREFIX #include "prefix_sha.h" diff --git a/source/libwolfssl/openssl/ssl.h b/source/libwolfssl/openssl/ssl.h index 3062d994..5e406004 100644 --- a/source/libwolfssl/openssl/ssl.h +++ b/source/libwolfssl/openssl/ssl.h @@ -1,6 +1,6 @@ /* ssl.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -32,26 +32,28 @@ /* wolfssl_openssl compatibility layer */ #ifndef OPENSSL_EXTRA_SSL_GUARD #define OPENSSL_EXTRA_SSL_GUARD -#include +#include #endif /* OPENSSL_EXTRA_SSL_GUARD */ -#include -#include -#include +#include +#include +#include #ifdef OPENSSL_EXTRA -#include +#include #endif #if defined(WOLFSSL_QT) || defined(OPENSSL_ALL) -#include -#include +#include +#include #endif /* need MIN_CODE_E to determine wolfSSL error range */ -#include +#include /* all NID_* values are in asn.h */ -#include +#include + +#include #ifdef __cplusplus extern "C" { @@ -67,6 +69,9 @@ #undef ASN1_INTEGER #endif +#ifdef OPENSSL_EXTRA +WOLFSSL_API int wolfSSL_OPENSSL_init_ssl(word64 opts, const OPENSSL_INIT_SETTINGS *settings); +#endif typedef WOLFSSL SSL; typedef WOLFSSL_SESSION SSL_SESSION; @@ -100,23 +105,33 @@ typedef WOLFSSL_ASN1_INTEGER ASN1_INTEGER; typedef WOLFSSL_ASN1_OBJECT ASN1_OBJECT; typedef WOLFSSL_ASN1_STRING ASN1_STRING; typedef WOLFSSL_ASN1_TYPE ASN1_TYPE; +typedef WOLFSSL_X509_ATTRIBUTE X509_ATTRIBUTE; typedef WOLFSSL_ASN1_BIT_STRING ASN1_BIT_STRING; typedef WOLFSSL_dynlock_value CRYPTO_dynlock_value; typedef WOLFSSL_BUF_MEM BUF_MEM; typedef WOLFSSL_GENERAL_NAMES GENERAL_NAMES; typedef WOLFSSL_GENERAL_NAME GENERAL_NAME; +#define X509_L_FILE_LOAD WOLFSSL_X509_L_FILE_LOAD +#define X509_L_ADD_DIR WOLFSSL_X509_L_ADD_DIR +#define X509_L_ADD_STORE WOLFSSL_X509_L_ADD_STORE +#define X509_L_LOAD_STORE WOLFSSL_X509_L_LOAD_STORE + #define ASN1_UTCTIME WOLFSSL_ASN1_TIME #define ASN1_GENERALIZEDTIME WOLFSSL_ASN1_TIME typedef WOLFSSL_COMP_METHOD COMP_METHOD; typedef WOLFSSL_COMP SSL_COMP; typedef WOLFSSL_X509_REVOKED X509_REVOKED; +typedef WOLFSSL_X509_LOOKUP_TYPE X509_LOOKUP_TYPE; typedef WOLFSSL_X509_OBJECT X509_OBJECT; typedef WOLFSSL_X509_STORE X509_STORE; typedef WOLFSSL_X509_STORE_CTX X509_STORE_CTX; typedef WOLFSSL_X509_VERIFY_PARAM X509_VERIFY_PARAM; +typedef int OSSL_HANDSHAKE_STATE; +#define TLS_ST_BEFORE 0 /* NULL_STATE from enum states */ + #define EVP_CIPHER_INFO EncryptedInfo #define STACK_OF(x) WOLFSSL_STACK @@ -126,13 +141,15 @@ typedef WOLFSSL_X509_VERIFY_PARAM X509_VERIFY_PARAM; #define CONF_get1_default_config_file wolfSSL_CONF_get1_default_config_file typedef STACK_OF(ACCESS_DESCRIPTION) AUTHORITY_INFO_ACCESS; -#define CRYPTO_free(xp) XFREE(xp, NULL, DYNAMIC_TYPE_TMP_BUFFER) -#define CRYPTO_malloc(sz) XMALLOC(sz, NULL, DYNAMIC_TYPE_TMP_BUFFER) +#define CRYPTO_free wolfSSL_CRYPTO_free +#define CRYPTO_malloc wolfSSL_CRYPTO_malloc #define CRYPTO_EX_new WOLFSSL_CRYPTO_EX_new #define CRYPTO_EX_dup WOLFSSL_CRYPTO_EX_dup #define CRYPTO_EX_free WOLFSSL_CRYPTO_EX_free #define CRYPTO_EX_DATA WOLFSSL_CRYPTO_EX_DATA +#define CRYPTO_set_mem_functions wolfSSL_CRYPTO_set_mem_functions + /* depreciated */ #define CRYPTO_thread_id wolfSSL_thread_id #define CRYPTO_set_id_callback wolfSSL_set_id_callback @@ -153,6 +170,9 @@ typedef STACK_OF(ACCESS_DESCRIPTION) AUTHORITY_INFO_ACCESS; #define set_ex_data wolfSSL_CRYPTO_set_ex_data #define get_ex_data wolfSSL_CRYPTO_get_ex_data #define CRYPTO_memcmp wolfSSL_CRYPTO_memcmp +#define CRYPTO_get_ex_new_index wolfSSL_CRYPTO_get_ex_new_index + +#define CRYPTO_get_ex_new_index wolfSSL_CRYPTO_get_ex_new_index /* this function was used to set the default malloc, free, and realloc */ #define CRYPTO_malloc_init() 0 /* CRYPTO_malloc_init is not needed */ @@ -167,11 +187,12 @@ typedef STACK_OF(ACCESS_DESCRIPTION) AUTHORITY_INFO_ACCESS; /* at the moment only returns ok */ #define SSL_get_verify_result wolfSSL_get_verify_result -#define SSL_get_verify_mode wolfSSL_SSL_get_mode +#define SSL_get_verify_mode wolfSSL_get_verify_mode #define SSL_get_verify_depth wolfSSL_get_verify_depth #define SSL_CTX_get_verify_mode wolfSSL_CTX_get_verify_mode #define SSL_CTX_get_verify_depth wolfSSL_CTX_get_verify_depth #define SSL_get_certificate wolfSSL_get_certificate +#define SSL_CTX_get0_certificate wolfSSL_CTX_get0_certificate #define SSL_use_certificate wolfSSL_use_certificate #define SSL_use_certificate_ASN1 wolfSSL_use_certificate_ASN1 #define d2i_PKCS8_PRIV_KEY_INFO_bio wolfSSL_d2i_PKCS8_PKEY_bio @@ -179,6 +200,7 @@ typedef STACK_OF(ACCESS_DESCRIPTION) AUTHORITY_INFO_ACCESS; #define i2d_PKCS8PrivateKey_bio wolfSSL_PEM_write_bio_PKCS8PrivateKey #define PKCS8_PRIV_KEY_INFO_free wolfSSL_EVP_PKEY_free #define d2i_PKCS12_fp wolfSSL_d2i_PKCS12_fp +#define SSL_CTX_set_ecdh_auto wolfSSL_CTX_set_ecdh_auto #define i2d_PUBKEY wolfSSL_i2d_PUBKEY #define d2i_PUBKEY wolfSSL_d2i_PUBKEY @@ -279,24 +301,39 @@ typedef STACK_OF(ACCESS_DESCRIPTION) AUTHORITY_INFO_ACCESS; #define SSL_CTX_set_cert_verify_callback wolfSSL_CTX_set_cert_verify_callback #define SSL_set_verify wolfSSL_set_verify #define SSL_set_verify_result wolfSSL_set_verify_result +#define SSL_verify_client_post_handshake wolfSSL_verify_client_post_handshake +#define SSL_set_post_handshake_auth wolfSSL_set_post_handshake_auth +#define SSL_CTX_set_post_handshake_auth wolfSSL_CTX_set_post_handshake_auth #define SSL_pending wolfSSL_pending #define SSL_load_error_strings wolfSSL_load_error_strings #define SSL_library_init wolfSSL_library_init +#define OPENSSL_cleanup (void)wolfSSL_Cleanup +#define OPENSSL_init_ssl wolfSSL_OPENSSL_init_ssl #define OpenSSL_add_ssl_algorithms wolfSSL_library_init #define SSL_CTX_set_session_cache_mode wolfSSL_CTX_set_session_cache_mode #define SSL_CTX_set_cipher_list wolfSSL_CTX_set_cipher_list #define SSL_CTX_set_ciphersuites wolfSSL_CTX_set_cipher_list #define SSL_set_cipher_list wolfSSL_set_cipher_list /* wolfSSL does not support security levels */ -#define SSL_CTX_set_security_level(...) +#define SSL_CTX_set_security_level wolfSSL_CTX_set_security_level +#define SSL_CTX_get_security_level wolfSSL_CTX_get_security_level /* wolfSSL does not support exporting keying material */ -#define SSL_export_keying_material(...) 0 +#define SSL_export_keying_material wolfSSL_export_keying_material + +#define SSL_CTX_set1_sigalgs_list wolfSSL_CTX_set1_sigalgs_list +#define SSL_set1_sigalgs_list wolfSSL_set1_sigalgs_list +#define SSL_get_signature_nid wolfSSL_get_signature_nid + +#define SSL_CTX_set1_groups wolfSSL_CTX_set1_groups +#define SSL_set1_groups wolfSSL_set1_groups #define SSL_CTX_set1_groups_list wolfSSL_CTX_set1_groups_list #define SSL_set1_groups_list wolfSSL_set1_groups_list #define SSL_set_ex_data wolfSSL_set_ex_data #define SSL_get_shutdown wolfSSL_get_shutdown +#define SSL_get_finished wolfSSL_get_finished +#define SSL_get_peer_finished wolfSSL_get_peer_finished #define SSL_set_rfd wolfSSL_set_rfd #define SSL_set_wfd wolfSSL_set_wfd #define SSL_set_shutdown wolfSSL_set_shutdown @@ -307,6 +344,7 @@ typedef STACK_OF(ACCESS_DESCRIPTION) AUTHORITY_INFO_ACCESS; #define SSL_SESSION_up_ref wolfSSL_SESSION_up_ref #define SSL_SESSION_dup wolfSSL_SESSION_dup #define SSL_SESSION_free wolfSSL_SESSION_free +#define SSL_SESSION_set_cipher wolfSSL_SESSION_set_cipher #define SSL_is_init_finished wolfSSL_is_init_finished #define SSL_get_version wolfSSL_get_version @@ -333,6 +371,7 @@ typedef STACK_OF(ACCESS_DESCRIPTION) AUTHORITY_INFO_ACCESS; #define SSL_MODE_RELEASE_BUFFERS 0x00000010U #define ASN1_BOOLEAN WOLFSSL_ASN1_BOOLEAN #define X509_get_ext wolfSSL_X509_get_ext + #define X509_get_ext_by_OBJ wolfSSL_X509_get_ext_by_OBJ #define X509_cmp wolfSSL_X509_cmp #define X509_EXTENSION_get_object wolfSSL_X509_EXTENSION_get_object #define X509_EXTENSION_get_critical wolfSSL_X509_EXTENSION_get_critical @@ -345,14 +384,19 @@ typedef STACK_OF(ACCESS_DESCRIPTION) AUTHORITY_INFO_ACCESS; #define DSA_dup_DH wolfSSL_DSA_dup_DH /* wolfSSL does not support DSA as the cert public key */ #define EVP_PKEY_get0_DSA wolfSSL_EVP_PKEY_get0_DSA +#define EVP_PKEY_param_check wolfSSL_EVP_PKEY_param_check +#define EVP_PKEY_CTX_free wolfSSL_EVP_PKEY_CTX_free #define DSA_bits wolfSSL_DSA_bits #define i2d_X509_bio wolfSSL_i2d_X509_bio +#define i2d_X509_REQ_bio wolfSSL_i2d_X509_REQ_bio #define d2i_X509_bio wolfSSL_d2i_X509_bio +#define d2i_X509_REQ_bio wolfSSL_d2i_X509_REQ_bio #define d2i_X509_fp wolfSSL_d2i_X509_fp #define i2d_X509 wolfSSL_i2d_X509 #define d2i_X509 wolfSSL_d2i_X509 #define PEM_read_bio_X509 wolfSSL_PEM_read_bio_X509 +#define PEM_read_bio_X509_REQ wolfSSL_PEM_read_bio_X509_REQ #define PEM_read_bio_X509_CRL wolfSSL_PEM_read_bio_X509_CRL #define PEM_read_bio_X509_AUX wolfSSL_PEM_read_bio_X509_AUX #define PEM_read_X509 wolfSSL_PEM_read_X509 @@ -363,10 +407,18 @@ typedef STACK_OF(ACCESS_DESCRIPTION) AUTHORITY_INFO_ACCESS; #define i2d_PrivateKey wolfSSL_i2d_PrivateKey #define i2d_X509_REQ wolfSSL_i2d_X509_REQ +#define d2i_X509_REQ wolfSSL_d2i_X509_REQ #define X509_REQ_new wolfSSL_X509_REQ_new #define X509_REQ_free wolfSSL_X509_REQ_free #define X509_REQ_sign wolfSSL_X509_REQ_sign +#define X509_REQ_sign_ctx wolfSSL_X509_REQ_sign_ctx #define X509_REQ_add_extensions wolfSSL_X509_REQ_add_extensions +#define X509_REQ_add1_attr_by_NID wolfSSL_X509_REQ_add1_attr_by_NID +#define X509_REQ_add1_attr_by_txt wolfSSL_X509_REQ_add1_attr_by_txt +#define X509_REQ_get_attr_by_NID wolfSSL_X509_REQ_get_attr_by_NID +#define X509_REQ_get_attr wolfSSL_X509_REQ_get_attr +#define X509_ATTRIBUTE_get0_type wolfSSL_X509_ATTRIBUTE_get0_type +#define X509_to_X509_REQ wolfSSL_X509_to_X509_REQ #define X509_REQ_set_subject_name wolfSSL_X509_REQ_set_subject_name #define X509_REQ_set_pubkey wolfSSL_X509_REQ_set_pubkey #define PEM_write_bio_X509_REQ wolfSSL_PEM_write_bio_X509_REQ @@ -376,30 +428,36 @@ typedef STACK_OF(ACCESS_DESCRIPTION) AUTHORITY_INFO_ACCESS; #define X509_free wolfSSL_X509_free #define X509_load_certificate_file wolfSSL_X509_load_certificate_file #define X509_digest wolfSSL_X509_digest +#define X509_pubkey_digest wolfSSL_X509_pubkey_digest #define X509_get_ext_count wolfSSL_X509_get_ext_count #define X509_get_ext_d2i wolfSSL_X509_get_ext_d2i #define X509V3_EXT_i2d wolfSSL_X509V3_EXT_i2d +#define X509_get0_extensions wolfSSL_X509_get0_extensions +#define X509_get_extensions wolfSSL_X509_get0_extensions +#define X509_REQ_get_extensions wolfSSL_X509_REQ_get_extensions #define X509_get_ext wolfSSL_X509_get_ext #define X509_get_ext_by_NID wolfSSL_X509_get_ext_by_NID #define X509_get_issuer_name wolfSSL_X509_get_issuer_name #define X509_issuer_name_hash wolfSSL_X509_issuer_name_hash -#define X509_get_subject_name wolfSSL_X509_get_subject_name #define X509_subject_name_hash wolfSSL_X509_subject_name_hash +#define X509_get_subject_name wolfSSL_X509_get_subject_name +#define X509_REQ_get_subject_name wolfSSL_X509_get_subject_name #define X509_get_pubkey wolfSSL_X509_get_pubkey #define X509_get0_pubkey wolfSSL_X509_get_pubkey +#define X509_REQ_get_pubkey wolfSSL_X509_get_pubkey #define X509_get_notBefore wolfSSL_X509_get_notBefore #define X509_get0_notBefore wolfSSL_X509_get_notBefore +#define X509_getm_notBefore wolfSSL_X509_get_notBefore #define X509_get_notAfter wolfSSL_X509_get_notAfter #define X509_get0_notAfter wolfSSL_X509_get_notAfter +#define X509_getm_notAfter wolfSSL_X509_get_notAfter #define X509_get_serialNumber wolfSSL_X509_get_serialNumber #define X509_get0_pubkey_bitstr wolfSSL_X509_get0_pubkey_bitstr #define X509_get_ex_new_index wolfSSL_X509_get_ex_new_index #define X509_get_ex_data wolfSSL_X509_get_ex_data #define X509_set_ex_data wolfSSL_X509_set_ex_data #define X509_get1_ocsp wolfSSL_X509_get1_ocsp -#ifndef WOLFSSL_HAPROXY #define X509_get_version wolfSSL_X509_get_version -#endif #define X509_get_signature_nid wolfSSL_X509_get_signature_nid #define X509_set_subject_name wolfSSL_X509_set_subject_name #define X509_set_issuer_name wolfSSL_X509_set_issuer_name @@ -408,19 +466,31 @@ typedef STACK_OF(ACCESS_DESCRIPTION) AUTHORITY_INFO_ACCESS; #define X509_set_notBefore wolfSSL_X509_set_notBefore #define X509_set_serialNumber wolfSSL_X509_set_serialNumber #define X509_set_version wolfSSL_X509_set_version +#define X509_REQ_set_version wolfSSL_X509_set_version #define X509_sign wolfSSL_X509_sign +#define X509_sign_ctx wolfSSL_X509_sign_ctx #define X509_print wolfSSL_X509_print +#define X509_REQ_print wolfSSL_X509_print #define X509_print_ex wolfSSL_X509_print_ex +#define X509_print_fp wolfSSL_X509_print_fp +#define X509_REQ_print_fp wolfSSL_X509_print_fp +#define X509_signature_print wolfSSL_X509_signature_print +#define X509_get0_signature wolfSSL_X509_get0_signature #define X509_verify_cert_error_string wolfSSL_X509_verify_cert_error_string #define X509_verify_cert wolfSSL_X509_verify_cert +#define X509_verify wolfSSL_X509_verify +#define X509_REQ_verify wolfSSL_X509_REQ_verify #define X509_check_private_key wolfSSL_X509_check_private_key +#define X509_REQ_check_private_key wolfSSL_X509_check_private_key #define X509_check_ca wolfSSL_X509_check_ca #define X509_check_host wolfSSL_X509_check_host +#define X509_check_email wolfSSL_X509_check_email #define X509_check_ip_asc wolfSSL_X509_check_ip_asc #define X509_email_free wolfSSL_X509_email_free #define X509_check_issued wolfSSL_X509_check_issued #define X509_dup wolfSSL_X509_dup #define X509_add_ext wolfSSL_X509_add_ext +#define X509_delete_ext wolfSSL_X509_delete_ext #define X509_EXTENSION_get_object wolfSSL_X509_EXTENSION_get_object #define X509_EXTENSION_get_data wolfSSL_X509_EXTENSION_get_data @@ -435,6 +505,10 @@ typedef STACK_OF(ACCESS_DESCRIPTION) AUTHORITY_INFO_ACCESS; #define sk_X509_pop_free wolfSSL_sk_X509_pop_free #define sk_X509_dup wolfSSL_sk_dup #define sk_X509_free wolfSSL_sk_X509_free +#define X509_chain_up_ref wolfSSL_X509_chain_up_ref + +#define sk_X509_OBJECT_new wolfSSL_sk_X509_OBJECT_new +#define sk_X509_OBJECT_free wolfSSL_sk_X509_OBJECT_free #define sk_X509_EXTENSION_num wolfSSL_sk_X509_EXTENSION_num #define sk_X509_EXTENSION_value wolfSSL_sk_X509_EXTENSION_value @@ -452,6 +526,7 @@ typedef STACK_OF(ACCESS_DESCRIPTION) AUTHORITY_INFO_ACCESS; #define sk_X509_INFO_pop wolfSSL_sk_X509_INFO_pop #define sk_X509_INFO_pop_free wolfSSL_sk_X509_INFO_pop_free #define sk_X509_INFO_free wolfSSL_sk_X509_INFO_free +#define sk_X509_INFO_shift wolfSSL_sk_X509_INFO_pop #define i2d_X509_NAME wolfSSL_i2d_X509_NAME #define d2i_X509_NAME wolfSSL_d2i_X509_NAME @@ -468,9 +543,12 @@ typedef STACK_OF(ACCESS_DESCRIPTION) AUTHORITY_INFO_ACCESS; #define X509_NAME_add_entry wolfSSL_X509_NAME_add_entry #define X509_NAME_add_entry_by_txt wolfSSL_X509_NAME_add_entry_by_txt #define X509_NAME_add_entry_by_NID wolfSSL_X509_NAME_add_entry_by_NID +#define X509_NAME_delete_entry wolfSSL_X509_NAME_delete_entry +#define X509_NAME_hash wolfSSL_X509_NAME_hash #define X509_NAME_oneline wolfSSL_X509_NAME_oneline #define X509_NAME_get_index_by_NID wolfSSL_X509_NAME_get_index_by_NID #define X509_NAME_print_ex wolfSSL_X509_NAME_print_ex +#define X509_NAME_print_ex_fp wolfSSL_X509_NAME_print_ex_fp #define X509_NAME_digest wolfSSL_X509_NAME_digest #define X509_cmp_current_time wolfSSL_X509_cmp_current_time #define X509_cmp_time wolfSSL_X509_cmp_time @@ -481,6 +559,7 @@ typedef STACK_OF(ACCESS_DESCRIPTION) AUTHORITY_INFO_ACCESS; #define sk_ACCESS_DESCRIPTION_value wolfSSL_sk_ACCESS_DESCRIPTION_value #define sk_X509_NAME_new wolfSSL_sk_X509_NAME_new +#define sk_X509_NAME_new_null() wolfSSL_sk_X509_NAME_new(NULL) #define sk_X509_NAME_push wolfSSL_sk_X509_NAME_push #define sk_X509_NAME_find wolfSSL_sk_X509_NAME_find #define sk_X509_NAME_set_cmp_func wolfSSL_sk_X509_NAME_set_cmp_func @@ -505,12 +584,20 @@ typedef WOLFSSL_X509_NAME_ENTRY X509_NAME_ENTRY; #define X509_V_FLAG_NO_CHECK_TIME WOLFSSL_NO_CHECK_TIME #define X509_CHECK_FLAG_NO_WILDCARDS WOLFSSL_NO_WILDCARDS +#define X509_VP_FLAG_DEFAULT WOLFSSL_VPARAM_DEFAULT +#define X509_VP_FLAG_OVERWRITE WOLFSSL_VPARAM_OVERWRITE +#define X509_VP_FLAG_RESET_FLAGS WOLFSSL_VPARAM_RESET_FLAGS +#define X509_VP_FLAG_LOCKED WOLFSSL_VPARAM_LOCKED +#define X509_VP_FLAG_ONCE WOLFSSL_VPARAM_ONCE + #define X509_STORE_CTX_get_current_cert wolfSSL_X509_STORE_CTX_get_current_cert #define X509_STORE_CTX_set_verify_cb wolfSSL_X509_STORE_CTX_set_verify_cb #define X509_STORE_CTX_new wolfSSL_X509_STORE_CTX_new #define X509_STORE_CTX_free wolfSSL_X509_STORE_CTX_free #define X509_STORE_CTX_get_chain wolfSSL_X509_STORE_CTX_get_chain +#define X509_STORE_CTX_get0_chain wolfSSL_X509_STORE_CTX_get_chain #define X509_STORE_CTX_get1_chain wolfSSL_X509_STORE_CTX_get1_chain +#define X509_STORE_CTX_get0_parent_ctx wolfSSL_X509_STORE_CTX_get0_parent_ctx #define X509_STORE_CTX_get_error wolfSSL_X509_STORE_CTX_get_error #define X509_STORE_CTX_get_error_depth wolfSSL_X509_STORE_CTX_get_error_depth #define X509_STORE_CTX_init wolfSSL_X509_STORE_CTX_init @@ -525,6 +612,7 @@ typedef WOLFSSL_X509_NAME_ENTRY X509_NAME_ENTRY; wolfSSL_X509_STORE_CTX_get0_current_issuer #define X509_STORE_CTX_get0_store wolfSSL_X509_STORE_CTX_get0_store #define X509_STORE_CTX_get0_cert wolfSSL_X509_STORE_CTX_get0_cert +#define X509_STORE_CTX_trusted_stack wolfSSL_X509_STORE_CTX_trusted_stack #define X509_STORE_set_verify_cb(s, c) \ wolfSSL_X509_STORE_set_verify_cb((WOLFSSL_X509_STORE *)(s), (WOLFSSL_X509_STORE_CTX_verify_cb)(c)) @@ -540,17 +628,26 @@ wolfSSL_X509_STORE_set_verify_cb((WOLFSSL_X509_STORE *)(s), (WOLFSSL_X509_STORE_ #define X509_STORE_set_flags wolfSSL_X509_STORE_set_flags #define X509_STORE_get1_certs wolfSSL_X509_STORE_get1_certs #define X509_STORE_get_by_subject wolfSSL_X509_STORE_get_by_subject +#define X509_STORE_set_ex_data wolfSSL_X509_STORE_set_ex_data +#define X509_STORE_get_ex_data wolfSSL_X509_STORE_get_ex_data #define X509_STORE_CTX_get1_issuer wolfSSL_X509_STORE_CTX_get1_issuer #define X509_STORE_CTX_set_time wolfSSL_X509_STORE_CTX_set_time +#define X509_VERIFY_PARAM_new wolfSSL_X509_VERIFY_PARAM_new +#define X509_VERIFY_PARAM_free wolfSSL_X509_VERIFY_PARAM_free +#define X509_VERIFY_PARAM_set_flags wolfSSL_X509_VERIFY_PARAM_set_flags +#define X509_VERIFY_PARAM_get_flags wolfSSL_X509_VERIFY_PARAM_get_flags +#define X509_VERIFY_PARAM_clear_flags wolfSSL_X509_VERIFY_PARAM_clear_flags #define X509_VERIFY_PARAM_set_hostflags wolfSSL_X509_VERIFY_PARAM_set_hostflags #define X509_VERIFY_PARAM_set1_host wolfSSL_X509_VERIFY_PARAM_set1_host #define X509_VERIFY_PARAM_set1_ip_asc wolfSSL_X509_VERIFY_PARAM_set1_ip_asc +#define X509_VERIFY_PARAM_set1 wolfSSL_X509_VERIFY_PARAM_set1 #define X509_STORE_load_locations wolfSSL_X509_STORE_load_locations #define X509_LOOKUP_add_dir wolfSSL_X509_LOOKUP_add_dir #define X509_LOOKUP_load_file wolfSSL_X509_LOOKUP_load_file #define X509_LOOKUP_hash_dir wolfSSL_X509_LOOKUP_hash_dir #define X509_LOOKUP_file wolfSSL_X509_LOOKUP_file +#define X509_LOOKUP_ctrl wolfSSL_X509_LOOKUP_ctrl #define d2i_X509_CRL wolfSSL_d2i_X509_CRL #define d2i_X509_CRL_fp wolfSSL_d2i_X509_CRL_fp @@ -561,8 +658,10 @@ wolfSSL_X509_STORE_set_verify_cb((WOLFSSL_X509_STORE *)(s), (WOLFSSL_X509_STORE_ #define X509_CRL_get_nextUpdate wolfSSL_X509_CRL_get_nextUpdate #define X509_CRL_verify wolfSSL_X509_CRL_verify #define X509_CRL_get_REVOKED wolfSSL_X509_CRL_get_REVOKED +#define X509_load_crl_file wolfSSL_X509_load_crl_file #define X509_get_X509_PUBKEY wolfSSL_X509_get_X509_PUBKEY +#define X509_REQ_get_X509_PUBKEY wolfSSL_X509_get_X509_PUBKEY #define X509_get0_tbs_sigalg wolfSSL_X509_get0_tbs_sigalg #define X509_PUBKEY_get0_param wolfSSL_X509_PUBKEY_get0_param #define X509_PUBKEY_get wolfSSL_X509_PUBKEY_get @@ -580,6 +679,9 @@ wolfSSL_X509_STORE_set_verify_cb((WOLFSSL_X509_STORE *)(s), (WOLFSSL_X509_STORE_ #define X509_OBJECT_free_contents wolfSSL_X509_OBJECT_free_contents +#define X509_OBJECT_get0_X509 wolfSSL_X509_OBJECT_get0_X509 +#define X509_OBJECT_get0_X509_CRL wolfSSL_X509_OBJECT_get0_X509_CRL + #define X509_check_purpose(...) 0 #define OCSP_parse_url wolfSSL_OCSP_parse_url @@ -610,6 +712,10 @@ wolfSSL_X509_STORE_set_verify_cb((WOLFSSL_X509_STORE *)(s), (WOLFSSL_X509_STORE_ #define BIO_set_write_buffer_size wolfSSL_BIO_set_write_buffer_size #define BIO_f_ssl wolfSSL_BIO_f_ssl #define BIO_new_socket wolfSSL_BIO_new_socket +#define BIO_new_connect wolfSSL_BIO_new_connect +#define BIO_set_conn_port wolfSSL_BIO_set_conn_port +#define BIO_do_connect wolfSSL_BIO_do_connect +#define BIO_do_handshake wolfSSL_BIO_do_handshake #define SSL_set_bio wolfSSL_set_bio #define BIO_set_ssl wolfSSL_BIO_set_ssl #define BIO_eof wolfSSL_BIO_eof @@ -652,15 +758,22 @@ wolfSSL_X509_STORE_set_verify_cb((WOLFSSL_X509_STORE *)(s), (WOLFSSL_X509_STORE_ #define sk_ASN1_OBJECT_free wolfSSL_sk_ASN1_OBJECT_free +#define ASN1_TIME_new wolfSSL_ASN1_TIME_new +#define ASN1_UTCTIME_new wolfSSL_ASN1_TIME_new #define ASN1_TIME_free wolfSSL_ASN1_TIME_free +#define ASN1_UTCTIME_free wolfSSL_ASN1_TIME_free #define ASN1_TIME_adj wolfSSL_ASN1_TIME_adj #define ASN1_TIME_print wolfSSL_ASN1_TIME_print #define ASN1_TIME_to_generalizedtime wolfSSL_ASN1_TIME_to_generalizedtime +#define ASN1_TIME_set wolfSSL_ASN1_TIME_set +#define ASN1_TIME_set_string wolfSSL_ASN1_TIME_set_string +#define ASN1_TIME_to_string wolfSSL_ASN1_TIME_to_string #define ASN1_GENERALIZEDTIME_print wolfSSL_ASN1_GENERALIZEDTIME_print #define ASN1_GENERALIZEDTIME_free wolfSSL_ASN1_GENERALIZEDTIME_free #define ASN1_tag2str wolfSSL_ASN1_tag2str +#define a2i_ASN1_INTEGER wolfSSL_a2i_ASN1_INTEGER #define i2a_ASN1_INTEGER wolfSSL_i2a_ASN1_INTEGER #define i2c_ASN1_INTEGER wolfSSL_i2c_ASN1_INTEGER #define ASN1_INTEGER_new wolfSSL_ASN1_INTEGER_new @@ -673,13 +786,24 @@ wolfSSL_X509_STORE_set_verify_cb((WOLFSSL_X509_STORE *)(s), (WOLFSSL_X509_STORE_ #define i2a_ASN1_OBJECT wolfSSL_i2a_ASN1_OBJECT #define i2d_ASN1_OBJECT wolfSSL_i2d_ASN1_OBJECT +#define ASN1_STRING_new wolfSSL_ASN1_STRING_new +#define ASN1_STRING_free wolfSSL_ASN1_STRING_free +#define ASN1_STRING_cmp wolfSSL_ASN1_STRING_cmp #define ASN1_STRING_data wolfSSL_ASN1_STRING_data -#define ASN1_STRING_get0_data wolfSSL_ASN1_STRING_data +#define ASN1_STRING_get0_data wolfSSL_ASN1_STRING_get0_data #define ASN1_STRING_length wolfSSL_ASN1_STRING_length #define ASN1_STRING_to_UTF8 wolfSSL_ASN1_STRING_to_UTF8 +#define ASN1_UNIVERSALSTRING_to_string wolfSSL_ASN1_UNIVERSALSTRING_to_string #define ASN1_STRING_print_ex wolfSSL_ASN1_STRING_print_ex #define ASN1_STRING_print(x, y) wolfSSL_ASN1_STRING_print ((WOLFSSL_BIO*)(x), (WOLFSSL_ASN1_STRING*)(y)) #define d2i_DISPLAYTEXT wolfSSL_d2i_DISPLAYTEXT +#ifndef NO_WOLFSSL_STUB +#define ASN1_STRING_set_default_mask_asc(...) 1 +#endif + +#define ASN1_OCTET_STRING_free wolfSSL_ASN1_STRING_free + +#define ASN1_PRINTABLE_type(...) V_ASN1_PRINTABLESTRING #define ASN1_UTCTIME_pr wolfSSL_ASN1_UTCTIME_pr @@ -707,6 +831,10 @@ wolfSSL_X509_STORE_set_verify_cb((WOLFSSL_X509_STORE *)(s), (WOLFSSL_X509_STORE_ #define SSL_CTX_set_info_callback wolfSSL_CTX_set_info_callback #define SSL_CTX_set_alpn_protos wolfSSL_CTX_set_alpn_protos +#define SSL_CTX_keylog_cb_func wolfSSL_CTX_keylog_cb_func +#define SSL_CTX_set_keylog_callback wolfSSL_CTX_set_keylog_callback +#define SSL_CTX_get_keylog_callback wolfSSL_CTX_get_keylog_callback + #define SSL_alert_type_string wolfSSL_alert_type_string #define SSL_alert_desc_string wolfSSL_alert_desc_string #define SSL_state_string wolfSSL_state_string @@ -715,7 +843,7 @@ wolfSSL_X509_STORE_set_verify_cb((WOLFSSL_X509_STORE *)(s), (WOLFSSL_X509_STORE_ #define RSA_generate_key wolfSSL_RSA_generate_key #define SSL_CTX_set_tmp_rsa_callback wolfSSL_CTX_set_tmp_rsa_callback #define RSA_print wolfSSL_RSA_print -#define RSA_bits wolfSSL_RSA_size +#define RSA_bits wolfSSL_RSA_bits #define RSA_up_ref wolfSSL_RSA_up_ref #define RSA_padding_add_PKCS1_PSS wolfSSL_RSA_padding_add_PKCS1_PSS #define RSA_verify_PKCS1_PSS wolfSSL_RSA_verify_PKCS1_PSS @@ -791,6 +919,8 @@ wolfSSL_X509_STORE_set_verify_cb((WOLFSSL_X509_STORE *)(s), (WOLFSSL_X509_STORE_ #define ERR_error_string wolfSSL_ERR_error_string #define ERR_error_string_n wolfSSL_ERR_error_string_n #define ERR_reason_error_string wolfSSL_ERR_reason_error_string +#define ERR_func_error_string wolfSSL_ERR_func_error_string +#define ERR_lib_error_string wolfSSL_ERR_lib_error_string #define ERR_load_BIO_strings wolfSSL_ERR_load_BIO_strings #ifndef WOLFCRYPT_ONLY @@ -800,6 +930,13 @@ wolfSSL_X509_STORE_set_verify_cb((WOLFSSL_X509_STORE *)(s), (WOLFSSL_X509_STORE_ #define PEMerr(func, reason) WOLFSSL_ERROR_LINE((reason), \ NULL, __LINE__, __FILE__, NULL) #endif +#ifndef WOLFCRYPT_ONLY +#define EVPerr(func, reason) wolfSSL_ERR_put_error(ERR_LIB_EVP, \ + (func), (reason), __FILE__, __LINE__) +#else +#define EVPerr(func, reason) WOLFSSL_ERROR_LINE((reason), \ + NULL, __LINE__, __FILE__, NULL) +#endif #define SSLv23_server_method wolfSSLv23_server_method #define SSL_CTX_set_options wolfSSL_CTX_set_options @@ -807,6 +944,7 @@ wolfSSL_X509_STORE_set_verify_cb((WOLFSSL_X509_STORE *)(s), (WOLFSSL_X509_STORE_ #define SSL_CTX_clear_options wolfSSL_CTX_clear_options #define SSL_CTX_check_private_key wolfSSL_CTX_check_private_key +#define SSL_CTX_get0_privatekey wolfSSL_CTX_get0_privatekey #define SSL_check_private_key wolfSSL_check_private_key #define SSL_CTX_set_mode wolfSSL_CTX_set_mode @@ -828,8 +966,10 @@ wolfSSL_X509_STORE_set_verify_cb((WOLFSSL_X509_STORE *)(s), (WOLFSSL_X509_STORE_ #define sk_num wolfSSL_sk_num #define sk_ASN1_OBJECT_num wolfSSL_sk_num +#define OPENSSL_sk_num wolfSSL_sk_num #define sk_value wolfSSL_sk_value #define sk_ASN1_OBJECT_value wolfSSL_sk_value +#define OPENSSL_sk_value wolfSSL_sk_value #define d2i_PKCS12_bio wolfSSL_d2i_PKCS12_bio #define d2i_PKCS12_fp wolfSSL_d2i_PKCS12_fp @@ -897,6 +1037,7 @@ wolfSSL_X509_STORE_set_verify_cb((WOLFSSL_X509_STORE *)(s), (WOLFSSL_X509_STORE_ #define sk_X509_NAME_find wolfSSL_sk_X509_NAME_find +#define DHparams_dup wolfSSL_DH_dup #define PEM_read_bio_DHparams wolfSSL_PEM_read_bio_DHparams #define PEM_read_bio_DSAparams wolfSSL_PEM_read_bio_DSAparams @@ -918,14 +1059,12 @@ wolfSSL_X509_STORE_set_verify_cb((WOLFSSL_X509_STORE *)(s), (WOLFSSL_X509_STORE_ #if defined(OPENSSL_ALL) || defined(WOLFSSL_ASIO) || defined(WOLFSSL_HAPROXY) \ || defined(WOLFSSL_NGINX) -#include +#include #define SSL_CTRL_CHAIN 88 #define ERR_LIB_SSL 20 #define SSL_R_SHORT_READ 10 #define ERR_R_PEM_LIB 9 -#define V_ASN1_IA5STRING 22 -#define V_ASN1_UTF8STRING 12 #define SSL_CTRL_MODE 33 #define SSL_CTRL_CLEAR_EXTRA_CHAIN_CERTS 83 @@ -982,13 +1121,22 @@ wolfSSL_X509_STORE_set_verify_cb((WOLFSSL_X509_STORE *)(s), (WOLFSSL_X509_STORE_ #define SSL_CTX_set_min_proto_version wolfSSL_CTX_set_min_proto_version #define SSL_CTX_set_max_proto_version wolfSSL_CTX_set_max_proto_version +#define SSL_set_min_proto_version wolfSSL_set_min_proto_version +#define SSL_set_max_proto_version wolfSSL_set_max_proto_version +#define SSL_CTX_get_min_proto_version wolfSSL_CTX_get_min_proto_version #define SSL_get_tlsext_status_exts wolfSSL_get_tlsext_status_exts +#define SSL_CTX_get_tlsext_ticket_keys wolfSSL_CTX_get_tlsext_ticket_keys +#define SSL_CTX_set_tlsext_ticket_keys wolfSSL_CTX_set_tlsext_ticket_keys +#define SSL_CTX_get_tlsext_status_cb wolfSSL_CTX_get_tlsext_status_cb +#define SSL_CTX_set_tlsext_status_cb wolfSSL_CTX_set_tlsext_status_cb + #define SSL_CTRL_CLEAR_NUM_RENEGOTIATIONS 11 #define SSL_CTRL_GET_TOTAL_RENEGOTIATIONS 12 #define SSL_CTRL_SET_TMP_DH 3 #define SSL_CTRL_SET_TMP_ECDH 4 +#define SSL_CTRL_SET_SESS_CACHE_MODE 44 #define SSL_CTRL_SET_TLSEXT_DEBUG_ARG 57 #define SSL_CTRL_SET_TLSEXT_STATUS_REQ_TYPE 65 #define SSL_CTRL_GET_TLSEXT_STATUS_REQ_EXTS 66 @@ -997,6 +1145,12 @@ wolfSSL_X509_STORE_set_verify_cb((WOLFSSL_X509_STORE *)(s), (WOLFSSL_X509_STORE_ #define SSL_CTRL_SET_TLSEXT_STATUS_REQ_IDS 69 #define SSL_CTRL_GET_TLSEXT_STATUS_REQ_OCSP_RESP 70 #define SSL_CTRL_SET_TLSEXT_STATUS_REQ_OCSP_RESP 71 +#define SSL_CTRL_SET_GROUPS 91 +#define SSL_CTRL_GET_PEER_TMP_KEY 109 +#define SSL_CTRL_GET_SERVER_TMP_KEY SSL_CTRL_GET_PEER_TMP_KEY +#define SSL_CTRL_SET_MIN_PROTO_VERSION 123 +#define SSL_CTRL_SET_MAX_PROTO_VERSION 124 +#define SSL_CTRL_SET_CURVES SSL_CTRL_SET_GROUPS #define SSL_CTRL_EXTRA_CHAIN_CERT 14 #define SSL_CTRL_OPTIONS 32 @@ -1026,15 +1180,35 @@ wolfSSL_X509_STORE_set_verify_cb((WOLFSSL_X509_STORE *)(s), (WOLFSSL_X509_STORE_ #define DTLS1_VERSION 0xFEFF #define DTLS1_2_VERSION 0xFEFD +#define OPENSSL_INIT_LOAD_SSL_STRINGS 0x00200000L +#define OPENSSL_INIT_LOAD_CRYPTO_STRINGS 0x00000002L + +#define CRYPTO_EX_INDEX_SSL 0 +#define TLS_ANY_VERSION 0x10000 +#define DTLS1_2_VERSION 0xFEFD +#define DTLS_MAX_VERSION DTLS1_2_VERSION + +/* apache and lighty use SSL_CONF_FLAG_FILE to enable conf support */ +#if !defined(WOLFSSL_APACHE_HTTPD) && !defined(HAVE_LIGHTY) +#define SSL_CONF_FLAG_CMDLINE WOLFSSL_CONF_FLAG_CMDLINE +#define SSL_CONF_FLAG_FILE WOLFSSL_CONF_FLAG_FILE +#define SSL_CONF_FLAG_CERTIFICATE WOLFSSL_CONF_FLAG_CERTIFICATE +#define SSL_CONF_TYPE_STRING WOLFSSL_CONF_TYPE_STRING +#define SSL_CONF_TYPE_FILE WOLFSSL_CONF_TYPE_FILE +#endif + #if defined(HAVE_STUNNEL) || defined(WOLFSSL_NGINX) || defined(OPENSSL_EXTRA) \ || defined(OPENSSL_ALL) -#include +#include #define SSL23_ST_SR_CLNT_HELLO_A (0x210|0x2000) #define SSL3_ST_SR_CLNT_HELLO_A (0x110|0x2000) #define SSL3_AD_BAD_CERTIFICATE bad_certificate #define SSL_AD_BAD_CERTIFICATE SSL3_AD_BAD_CERTIFICATE +#define SSL_AD_UNRECOGNIZED_NAME unrecognized_name +#define SSL_AD_NO_RENEGOTIATION no_renegotiation +#define SSL_AD_INTERNAL_ERROR 80 #define ASN1_STRFLGS_ESC_MSB 4 @@ -1074,8 +1248,9 @@ wolfSSL_X509_STORE_set_verify_cb((WOLFSSL_X509_STORE *)(s), (WOLFSSL_X509_STORE_ #define SSL3_AL_FATAL 2 #define SSL_TLSEXT_ERR_OK 0 -#define SSL_TLSEXT_ERR_ALERT_FATAL alert_fatal -#define SSL_TLSEXT_ERR_NOACK alert_warning +#define SSL_TLSEXT_ERR_ALERT_WARNING warning_return +#define SSL_TLSEXT_ERR_ALERT_FATAL fatal_return +#define SSL_TLSEXT_ERR_NOACK noack_return #define TLSEXT_NAMETYPE_host_name WOLFSSL_SNI_HOST_NAME #define SSL_set_tlsext_host_name wolfSSL_set_tlsext_host_name @@ -1089,8 +1264,15 @@ wolfSSL_X509_STORE_set_verify_cb((WOLFSSL_X509_STORE *)(s), (WOLFSSL_X509_STORE_ #define PSK_MAX_IDENTITY_LEN 128 #define SSL_CTX_clear_options wolfSSL_CTX_clear_options +#define SSL_CTX_add_server_custom_ext(...) 0 #endif /* HAVE_STUNNEL || WOLFSSL_NGINX */ + +#ifndef NO_WOLFSSL_STUB +#define b2i_PrivateKey_bio(...) NULL +#define b2i_PVK_bio(...) NULL +#endif + #define SSL_CTX_get_default_passwd_cb wolfSSL_CTX_get_default_passwd_cb #define SSL_CTX_get_default_passwd_cb_userdata wolfSSL_CTX_get_default_passwd_cb_userdata @@ -1123,11 +1305,12 @@ wolfSSL_X509_STORE_set_verify_cb((WOLFSSL_X509_STORE *)(s), (WOLFSSL_X509_STORE_ #if defined(WOLFSSL_NGINX) || defined(WOLFSSL_HAPROXY) || \ defined(WOLFSSL_MYSQL_COMPATIBLE) || defined(OPENSSL_ALL) || \ - defined(HAVE_LIGHTY) + defined(HAVE_LIGHTY) || defined(HAVE_STUNNEL) -#include +#include #define OPENSSL_STRING WOLFSSL_STRING +#define OPENSSL_CSTRING WOLFSSL_STRING #define TLSEXT_TYPE_application_layer_protocol_negotiation 16 @@ -1155,6 +1338,7 @@ wolfSSL_X509_STORE_set_verify_cb((WOLFSSL_X509_STORE *)(s), (WOLFSSL_X509_STORE_ #define SSL_R_HTTPS_PROXY_REQUEST PARSE_ERROR #define SSL_R_HTTP_REQUEST PARSE_ERROR #define SSL_R_UNSUPPORTED_PROTOCOL VERSION_ERROR +#define SSL_R_CERTIFICATE_VERIFY_FAILED VERIFY_CERT_ERROR #ifdef HAVE_SESSION_TICKET @@ -1164,6 +1348,7 @@ wolfSSL_X509_STORE_set_verify_cb((WOLFSSL_X509_STORE *)(s), (WOLFSSL_X509_STORE_ #define OPENSSL_config wolfSSL_OPENSSL_config #define OPENSSL_memdup wolfSSL_OPENSSL_memdup +#define OPENSSL_cleanse wolfSSL_OPENSSL_cleanse #define SSL_CTX_get_timeout wolfSSL_SSL_CTX_get_timeout #define SSL_CTX_set_tmp_ecdh wolfSSL_SSL_CTX_set_tmp_ecdh #define SSL_CTX_remove_session wolfSSL_SSL_CTX_remove_session @@ -1176,7 +1361,11 @@ wolfSSL_X509_STORE_set_verify_cb((WOLFSSL_X509_STORE *)(s), (WOLFSSL_X509_STORE_ #define SSL_CTX_set_tlsext_ticket_key_cb wolfSSL_CTX_set_tlsext_ticket_key_cb #define SSL_CTX_set_tlsext_status_cb wolfSSL_CTX_set_tlsext_status_cb #define SSL_CTX_get_extra_chain_certs wolfSSL_CTX_get_extra_chain_certs +#define sk_OPENSSL_STRING_num wolfSSL_sk_WOLFSSL_STRING_num #define sk_OPENSSL_STRING_value wolfSSL_sk_WOLFSSL_STRING_value +#define sk_OPENSSL_PSTRING_num wolfSSL_sk_WOLFSSL_STRING_num +#define sk_OPENSSL_PSTRING_value (WOLFSSL_STRING*)wolfSSL_sk_WOLFSSL_STRING_value +#define sk_OPENSSL_STRING_free wolfSSL_sk_free #define SSL_get0_alpn_selected wolfSSL_get0_alpn_selected #define SSL_select_next_proto wolfSSL_select_next_proto #define SSL_CTX_set_alpn_select_cb wolfSSL_CTX_set_alpn_select_cb @@ -1198,8 +1387,12 @@ wolfSSL_X509_STORE_set_verify_cb((WOLFSSL_X509_STORE *)(s), (WOLFSSL_X509_STORE_ #define SSL_CTX_add_client_CA wolfSSL_CTX_add_client_CA #define SSL_CTX_set_srp_password wolfSSL_CTX_set_srp_password #define SSL_CTX_set_srp_username wolfSSL_CTX_set_srp_username +#define SSL_CTX_set_srp_strength wolfSSL_CTX_set_srp_strength #define SSL_get_SSL_CTX wolfSSL_get_SSL_CTX #define SSL_get0_param wolfSSL_get0_param +#define SSL_CTX_get0_param wolfSSL_CTX_get0_param +#define SSL_CTX_set1_param wolfSSL_CTX_set1_param +#define SSL_get_srp_username wolfSSL_get_srp_username #define ERR_NUM_ERRORS 16 #define SN_pkcs9_emailAddress "Email" @@ -1210,6 +1403,11 @@ wolfSSL_X509_STORE_set_verify_cb((WOLFSSL_X509_STORE *)(s), (WOLFSSL_X509_STORE_ #define SSL_get_rbio wolfSSL_SSL_get_rbio #define SSL_get_wbio wolfSSL_SSL_get_wbio #define SSL_do_handshake wolfSSL_SSL_do_handshake + +#if defined(WOLFSSL_EARLY_DATA) +#define SSL_get_early_data_status wolfSSL_get_early_data_status +#endif + #endif /* OPENSSL_EXTRA */ /* cipher suites for compatibility */ @@ -1226,10 +1424,29 @@ wolfSSL_X509_STORE_set_verify_cb((WOLFSSL_X509_STORE *)(s), (WOLFSSL_X509_STORE_ #define sk_X509_OBJECT_num wolfSSL_sk_X509_OBJECT_num #define sk_X509_OBJECT_value wolfSSL_sk_X509_OBJECT_value #define sk_X509_OBJECT_delete wolfSSL_sk_X509_OBJECT_delete +#define X509_OBJECT_new wolfSSL_X509_OBJECT_new #define X509_OBJECT_free wolfSSL_X509_OBJECT_free -#define X509_OBJECT_get_type(x) 0 - +#define X509_OBJECT_get_type wolfSSL_X509_OBJECT_get_type +#if defined(OPENSSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER >= 0x10100000L +#define OpenSSL_version(x) wolfSSL_OpenSSL_version(x) +#else #define OpenSSL_version(x) wolfSSL_OpenSSL_version() +#endif + +#ifndef NO_WOLFSSL_STUB +#define OBJ_create_objects(...) +#endif + +#define SSL_set_psk_use_session_callback wolfSSL_set_psk_use_session_callback +#define SSL_SESSION_is_resumable wolfSSL_SESSION_is_resumable +typedef WOLFSSL_CONF_CTX SSL_CONF_CTX; + +#define SSL_CONF_CTX_new wolfSSL_CONF_CTX_new +#define SSL_CONF_CTX_free wolfSSL_CONF_CTX_free +#define SSL_CONF_CTX_set_ssl_ctx wolfSSL_CONF_CTX_set_ssl_ctx +#define SSL_CONF_CTX_set_flags wolfSSL_CONF_CTX_set_flags +#define SSL_CONF_CTX_finish wolfSSL_CONF_CTX_finish +#define SSL_CONF_cmd wolfSSL_CONF_cmd #ifdef __cplusplus } /* extern "C" */ diff --git a/source/libwolfssl/openssl/stack.h b/source/libwolfssl/openssl/stack.h index a27c46d4..8040574f 100644 --- a/source/libwolfssl/openssl/stack.h +++ b/source/libwolfssl/openssl/stack.h @@ -1,6 +1,6 @@ /* stack.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -28,15 +28,12 @@ extern "C" { #endif -#include - typedef void (*wolfSSL_sk_freefunc)(void *); WOLFSSL_API void wolfSSL_sk_GENERIC_pop_free(WOLFSSL_STACK* sk, wolfSSL_sk_freefunc); WOLFSSL_API void wolfSSL_sk_GENERIC_free(WOLFSSL_STACK *); WOLFSSL_API int wolfSSL_sk_GENERIC_push(WOLFSSL_STACK *sk, void *data); WOLFSSL_API void wolfSSL_sk_pop_free(WOLFSSL_STACK *st, void (*func) (void *)); -WOLFSSL_API void wolfSSL_sk_CONF_VALUE_free(WOLF_STACK_OF(WOLFSSL_CONF_VALUE)* sk); WOLFSSL_API WOLFSSL_STACK *wolfSSL_sk_new_null(void); WOLFSSL_API int wolfSSL_sk_CIPHER_push(WOLFSSL_STACK *st,WOLFSSL_CIPHER *cipher); diff --git a/source/libwolfssl/openssl/tls1.h b/source/libwolfssl/openssl/tls1.h index b73a8b0a..51923f69 100644 --- a/source/libwolfssl/openssl/tls1.h +++ b/source/libwolfssl/openssl/tls1.h @@ -1,6 +1,6 @@ /* tls1.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * diff --git a/source/libwolfssl/openssl/x509.h b/source/libwolfssl/openssl/x509.h index 483e77a3..5b151453 100644 --- a/source/libwolfssl/openssl/x509.h +++ b/source/libwolfssl/openssl/x509.h @@ -1,10 +1,11 @@ /* x509.h for openssl */ -#include -#include -#include -#include -#include +#include +#include +#include +#include +#include +#include /* wolfSSL_X509_print_ex flags */ #define X509_FLAG_COMPAT (0UL) @@ -23,4 +24,21 @@ #define X509_FLAG_NO_IDS (1UL << 12) #define XN_FLAG_FN_SN 0 -#define XN_FLAG_SEP_CPLUS_SPC 2 +#define XN_FLAG_ONELINE 0 +#define XN_FLAG_COMPAT 0 +#define XN_FLAG_RFC2253 1 +#define XN_FLAG_SEP_COMMA_PLUS (1 << 16) +#define XN_FLAG_SEP_CPLUS_SPC (2 << 16) +#define XN_FLAG_SEP_SPLUS_SPC (3 << 16) +#define XN_FLAG_SEP_MULTILINE (4 << 16) +#define XN_FLAG_SEP_MASK (0xF << 16) +#define XN_FLAG_DN_REV (1 << 20) +#define XN_FLAG_FN_LN (1 << 21) +#define XN_FLAG_FN_OID (2 << 21) +#define XN_FLAG_FN_NONE (3 << 21) +#define XN_FLAG_FN_MASK (3 << 21) +#define XN_FLAG_SPC_EQ (1 << 23) +#define XN_FLAG_DUMP_UNKNOWN_FIELDS (1 << 24) +#define XN_FLAG_FN_ALIGN (1 << 25) + +#define XN_FLAG_MULTILINE 0xFFFF diff --git a/source/libwolfssl/openssl/x509_vfy.h b/source/libwolfssl/openssl/x509_vfy.h index b94b97a0..6642dd54 100644 --- a/source/libwolfssl/openssl/x509_vfy.h +++ b/source/libwolfssl/openssl/x509_vfy.h @@ -1,6 +1,6 @@ /* x509_vfy.h * - * Copyright (C) 2006-2017 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -24,7 +24,7 @@ #ifndef WOLFSSL_x509_vfy_H_ #define WOLFSSL_x509_vfy_H_ -#include +#include #ifdef __cplusplus extern "C" { diff --git a/source/libwolfssl/openssl/x509v3.h b/source/libwolfssl/openssl/x509v3.h index 4625624b..803777cf 100644 --- a/source/libwolfssl/openssl/x509v3.h +++ b/source/libwolfssl/openssl/x509v3.h @@ -1,6 +1,6 @@ /* x509v3.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -24,8 +24,8 @@ #ifndef WOLFSSL_x509v3_H #define WOLFSSL_x509v3_H -#include -#include +#include +#include #ifdef __cplusplus extern "C" { @@ -83,6 +83,8 @@ struct WOLFSSL_X509_EXTENSION { #define X509V3_CTX WOLFSSL_X509V3_CTX +#define CTX_TEST 0x1 + typedef struct WOLFSSL_AUTHORITY_KEYID AUTHORITY_KEYID; typedef struct WOLFSSL_BASIC_CONSTRAINTS BASIC_CONSTRAINTS; typedef struct WOLFSSL_ACCESS_DESCRIPTION ACCESS_DESCRIPTION; @@ -99,6 +101,8 @@ WOLFSSL_API char* wolfSSL_i2s_ASN1_STRING(WOLFSSL_v3_ext_method *method, const WOLFSSL_ASN1_STRING *s); WOLFSSL_API int wolfSSL_X509V3_EXT_print(WOLFSSL_BIO *out, WOLFSSL_X509_EXTENSION *ext, unsigned long flag, int indent); +WOLFSSL_API int wolfSSL_X509V3_EXT_add_nconf(WOLFSSL_CONF *conf, WOLFSSL_X509V3_CTX *ctx, + const char *section, WOLFSSL_X509 *cert); #define BASIC_CONSTRAINTS_free wolfSSL_BASIC_CONSTRAINTS_free #define AUTHORITY_KEYID_free wolfSSL_AUTHORITY_KEYID_free @@ -107,11 +111,20 @@ WOLFSSL_API int wolfSSL_X509V3_EXT_print(WOLFSSL_BIO *out, #define ASN1_OCTET_STRING WOLFSSL_ASN1_STRING #define X509V3_EXT_get wolfSSL_X509V3_EXT_get #define X509V3_EXT_d2i wolfSSL_X509V3_EXT_d2i +#define X509V3_EXT_add_nconf wolfSSL_X509V3_EXT_add_nconf +#ifndef NO_WOLFSSL_STUB +#define X509V3_parse_list(...) NULL +#endif #define i2s_ASN1_OCTET_STRING wolfSSL_i2s_ASN1_STRING #define X509V3_EXT_print wolfSSL_X509V3_EXT_print -#define X509V3_EXT_conf_nid wolfSSL_X509V3_EXT_conf_nid -#define X509V3_set_ctx wolfSSL_X509V3_set_ctx -#define X509V3_set_ctx_nodb wolfSSL_X509V3_set_ctx_nodb +#define X509V3_EXT_conf_nid wolfSSL_X509V3_EXT_conf_nid +#define X509V3_set_ctx wolfSSL_X509V3_set_ctx +#ifndef NO_WOLFSSL_STUB +#define X509V3_set_nconf(...) +#endif +#define X509V3_set_ctx_test(ctx) wolfSSL_X509V3_set_ctx(ctx, NULL, NULL, NULL, NULL, CTX_TEST) +#define X509V3_set_ctx_nodb wolfSSL_X509V3_set_ctx_nodb +#define X509v3_get_ext_count wolfSSL_sk_num #ifdef __cplusplus } diff --git a/source/libwolfssl/sniffer.h b/source/libwolfssl/sniffer.h index aa78fc26..beb3601a 100644 --- a/source/libwolfssl/sniffer.h +++ b/source/libwolfssl/sniffer.h @@ -1,6 +1,6 @@ /* sniffer.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -24,7 +24,8 @@ #ifndef WOLFSSL_SNIFFER_H #define WOLFSSL_SNIFFER_H -#include +#include +#include #ifdef _WIN32 #ifdef SSL_SNIFFER_EXPORTS @@ -182,8 +183,6 @@ typedef struct SSLStats unsigned long int sslDecryptedPackets; unsigned long int sslKeyMatches; unsigned long int sslEncryptedConns; - - unsigned long int sslResumptionValid; unsigned long int sslResumptionInserts; } SSLStats; @@ -199,7 +198,21 @@ SSL_SNIFFER_API int ssl_ReadStatistics(SSLStats* stats); WOLFSSL_API SSL_SNIFFER_API int ssl_ReadResetStatistics(SSLStats* stats); +typedef int (*SSLKeyCb)(void* vSniffer, int namedGroup, + const unsigned char* srvPub, unsigned int srvPubSz, + const unsigned char* cliPub, unsigned int cliPubSz, + DerBuffer* privKey, void* cbCtx, char* error); +#if defined(WOLFSSL_STATIC_EPHEMERAL) && defined(WOLFSSL_TLS13) +/* macro indicating support for key callback */ +#undef WOLFSSL_SNIFFER_KEY_CALLBACK +#define WOLFSSL_SNIFFER_KEY_CALLBACK +WOLFSSL_API +SSL_SNIFFER_API int ssl_SetKeyCallback(SSLKeyCb cb, void* cbCtx); +#endif + + +#ifdef WOLFSSL_SNIFFER_WATCH typedef int (*SSLWatchCb)(void* vSniffer, const unsigned char* certHash, unsigned int certHashSz, @@ -226,29 +239,37 @@ WOLFSSL_API SSL_SNIFFER_API int ssl_SetWatchKey_file(void* vSniffer, const char* keyFile, int keyType, const char* password, char* error); +#endif - +#ifdef WOLFSSL_SNIFFER_STORE_DATA_CB typedef int (*SSLStoreDataCb)(const unsigned char* decryptBuf, unsigned int decryptBufSz, unsigned int decryptBufOffset, void* ctx); WOLFSSL_API SSL_SNIFFER_API int ssl_SetStoreDataCallback(SSLStoreDataCb cb); +#endif +#ifdef WOLFSSL_SNIFFER_STORE_DATA_CB WOLFSSL_API SSL_SNIFFER_API int ssl_DecodePacketWithSessionInfoStoreData( const unsigned char* packet, int length, void* ctx, SSLInfo* sslInfo, char* error); +#endif - +#ifdef WOLFSSL_SNIFFER_CHAIN_INPUT WOLFSSL_API SSL_SNIFFER_API int ssl_DecodePacketWithChain(void* vChain, unsigned int chainSz, unsigned char** data, char* error); +#endif - +#if defined(WOLFSSL_SNIFFER_CHAIN_INPUT) && \ + defined(WOLFSSL_SNIFFER_STORE_DATA_CB) WOLFSSL_API SSL_SNIFFER_API int ssl_DecodePacketWithChainSessionInfoStoreData( void* vChain, unsigned int chainSz, void* ctx, SSLInfo* sslInfo, char* error); +#endif + #ifdef __cplusplus } /* extern "C" */ diff --git a/source/libwolfssl/sniffer_error.h b/source/libwolfssl/sniffer_error.h index 882aaeae..a0788f9b 100644 --- a/source/libwolfssl/sniffer_error.h +++ b/source/libwolfssl/sniffer_error.h @@ -1,6 +1,6 @@ /* sniffer_error.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -24,6 +24,13 @@ #ifndef WOLFSSL_SNIFFER_ERROR_H #define WOLFSSL_SNIFFER_ERROR_H + +/* General Sniffer Error */ +#define WOLFSSL_SNIFFER_ERROR -1 + +/* Sniffer failed and is in Fatal state */ +#define WOLFSSL_SNIFFER_FATAL_ERROR -2 + /* need to have errors as #defines since .rc files can't handle enums */ /* need to start at 1 and go in order for same reason */ @@ -109,7 +116,6 @@ #define GOT_CERT_STATUS_STR 73 #define RSA_KEY_MISSING_STR 74 #define NO_SECURE_RENEGOTIATION 75 - #define BAD_SESSION_STATS 76 #define REASSEMBLY_MAX_STR 77 #define DROPPING_LOST_FRAG_STR 78 @@ -131,6 +137,7 @@ #define STORE_DATA_FAIL_STR 92 #define CHAIN_INPUT_STR 93 #define GOT_ENC_EXT_STR 94 +#define GOT_HELLO_RETRY_REQ_STR 95 /* !!!! also add to msgTable in sniffer.c and .rc file !!!! */ diff --git a/source/libwolfssl/ssl.h b/source/libwolfssl/ssl.h index 0f89d508..d3e0cde3 100644 --- a/source/libwolfssl/ssl.h +++ b/source/libwolfssl/ssl.h @@ -1,6 +1,6 @@ /* ssl.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -35,11 +35,16 @@ #include #include #include +#include #ifdef HAVE_WOLF_EVENT #include #endif + #ifdef WOLF_CRYPTO_CB + #include +#endif + /* used internally by wolfSSL while OpenSSL types aren't */ #include @@ -82,8 +87,8 @@ #endif #elif (defined(OPENSSL_EXTRA) || defined(OPENSSL_EXTRA_X509_SMALL)) - #include - #include + #include + #include /* We need the old SSL names */ #ifdef NO_OLD_SSL_NAMES @@ -98,6 +103,19 @@ extern "C" { #endif +/* LHASH is implemented as a stack */ +typedef struct WOLFSSL_STACK WOLFSSL_LHASH; +#ifndef WOLF_LHASH_OF + #define WOLF_LHASH_OF(x) WOLFSSL_LHASH +#endif + +#ifndef WOLF_STACK_OF + #define WOLF_STACK_OF(x) WOLFSSL_STACK +#endif +#ifndef DECLARE_STACK_OF + #define DECLARE_STACK_OF(x) WOLF_STACK_OF(x); +#endif + #ifndef WOLFSSL_WOLFSSL_TYPE_DEFINED #define WOLFSSL_WOLFSSL_TYPE_DEFINED typedef struct WOLFSSL WOLFSSL; @@ -126,6 +144,10 @@ typedef struct WOLFSSL_X509_STORE_CTX WOLFSSL_X509_STORE_CTX; typedef int (*WOLFSSL_X509_STORE_CTX_verify_cb)(int, WOLFSSL_X509_STORE_CTX *); +typedef struct WOLFSSL_BY_DIR_HASH WOLFSSL_BY_DIR_HASH; +typedef struct WOLFSSL_BY_DIR_entry WOLFSSL_BY_DIR_entry; +typedef struct WOLFSSL_BY_DIR WOLFSSL_BY_DIR; + /* redeclare guard */ #define WOLFSSL_TYPES_DEFINED @@ -171,7 +193,6 @@ typedef struct WOLFSSL_X509_VERIFY_PARAM WOLFSSL_X509_VERIFY_PARAM; typedef struct WOLFSSL_BIO WOLFSSL_BIO; typedef struct WOLFSSL_BIO_METHOD WOLFSSL_BIO_METHOD; typedef struct WOLFSSL_X509_EXTENSION WOLFSSL_X509_EXTENSION; -typedef struct WOLFSSL_CONF_VALUE WOLFSSL_CONF_VALUE; typedef struct WOLFSSL_ASN1_OBJECT WOLFSSL_ASN1_OBJECT; typedef struct WOLFSSL_ASN1_OTHERNAME WOLFSSL_ASN1_OTHERNAME; typedef struct WOLFSSL_X509V3_CTX WOLFSSL_X509V3_CTX; @@ -185,12 +206,15 @@ typedef struct WOLFSSL_DH WOLFSSL_DH; #endif typedef struct WOLFSSL_ASN1_BIT_STRING WOLFSSL_ASN1_BIT_STRING; typedef struct WOLFSSL_ASN1_TYPE WOLFSSL_ASN1_TYPE; +typedef struct WOLFSSL_X509_ATTRIBUTE WOLFSSL_X509_ATTRIBUTE; typedef struct WOLFSSL_GENERAL_NAME WOLFSSL_GENERAL_NAME; typedef struct WOLFSSL_AUTHORITY_KEYID WOLFSSL_AUTHORITY_KEYID; typedef struct WOLFSSL_BASIC_CONSTRAINTS WOLFSSL_BASIC_CONSTRAINTS; typedef struct WOLFSSL_ACCESS_DESCRIPTION WOLFSSL_ACCESS_DESCRIPTION; +typedef struct WOLFSSL_CONF_CTX WOLFSSL_CONF_CTX; + #if defined(OPENSSL_ALL) || defined(OPENSSL_EXTRA) || defined(WOLFSSL_WPAS_SMALL) struct WOLFSSL_AUTHORITY_KEYID { @@ -259,8 +283,6 @@ struct WOLFSSL_X509V3_CTX { WOLFSSL_X509* x509; }; - - struct WOLFSSL_ASN1_OBJECT { void* heap; const unsigned char* obj; @@ -314,6 +336,12 @@ struct WOLFSSL_ASN1_TYPE { } value; }; +struct WOLFSSL_X509_ATTRIBUTE { + WOLFSSL_ASN1_OBJECT *object; + WOLFSSL_ASN1_TYPE *value; + WOLF_STACK_OF(WOLFSSL_ASN1_TYPE) *set; +}; + struct WOLFSSL_EVP_PKEY { void* heap; int type; /* openssh dereference */ @@ -325,28 +353,31 @@ struct WOLFSSL_EVP_PKEY { union { char* ptr; /* der format of key / or raw for NTRU */ } pkey; - #if (defined(OPENSSL_EXTRA) || defined(OPENSSL_EXTRA_X509_SMALL)) +#if (defined(OPENSSL_EXTRA) || defined(OPENSSL_EXTRA_X509_SMALL)) #ifndef NO_RSA - WOLFSSL_RSA* rsa; - byte ownRsa; /* if struct owns RSA and should free it */ + WOLFSSL_RSA* rsa; #endif #ifndef NO_DSA - WOLFSSL_DSA* dsa; - byte ownDsa; /* if struct owns DSA and should free it */ + WOLFSSL_DSA* dsa; #endif #ifdef HAVE_ECC - WOLFSSL_EC_KEY* ecc; - byte ownEcc; /* if struct owns ECC and should free it */ + WOLFSSL_EC_KEY* ecc; #endif #ifndef NO_DH - WOLFSSL_DH* dh; - byte ownDh; /* if struct owns DH and should free it */ + WOLFSSL_DH* dh; #endif WC_RNG rng; - #endif /* OPENSSL_EXTRA || OPENSSL_EXTRA_X509_SMALL */ - #ifdef HAVE_ECC - int pkey_curve; - #endif +#endif /* OPENSSL_EXTRA || OPENSSL_EXTRA_X509_SMALL */ +#ifdef HAVE_ECC + int pkey_curve; +#endif + word16 pkcs8HeaderSz; + + /* option bits */ + byte ownDh:1; /* if struct owns DH and should free it */ + byte ownEcc:1; /* if struct owns ECC and should free it */ + byte ownDsa:1; /* if struct owns DSA and should free it */ + byte ownRsa:1; /* if struct owns RSA and should free it */ }; typedef struct WOLFSSL_EVP_PKEY WOLFSSL_PKCS8_PRIV_KEY_INFO; #ifndef WOLFSSL_EVP_TYPE_DEFINED /* guard on redeclaration */ @@ -468,6 +499,8 @@ struct WOLFSSL_BIO { void* heap; /* user heap hint */ void* ptr; /* WOLFSSL, file descriptor, MD, or mem buf */ void* usrCtx; /* user set pointer */ + const char* ip; /* IP address for wolfIO_TcpConnect */ + word16 port; /* Port for wolfIO_TcpConnect */ char* infoArg; /* BIO callback argument */ wolf_bio_info_cb infoCb; /* BIO callback */ int wrSz; /* write buffer size (mem) */ @@ -495,12 +528,19 @@ typedef struct WOLFSSL_COMP { WOLFSSL_COMP_METHOD *method; } WOLFSSL_COMP; +#define WOLFSSL_X509_L_FILE_LOAD 0x1 +#define WOLFSSL_X509_L_ADD_DIR 0x2 +#define WOLFSSL_X509_L_ADD_STORE 0x3 +#define WOLFSSL_X509_L_LOAD_STORE 0x4 + struct WOLFSSL_X509_LOOKUP_METHOD { int type; }; struct WOLFSSL_X509_LOOKUP { WOLFSSL_X509_STORE *store; + int type; + WOLFSSL_BY_DIR* dirs; }; struct WOLFSSL_X509_STORE { @@ -511,6 +551,9 @@ struct WOLFSSL_X509_STORE { int isDynamic; WOLFSSL_X509_VERIFY_PARAM* param; /* certificate validation parameter */ #endif +#ifdef OPENSSL_ALL + WOLF_STACK_OF(WOLFSSL_X509_OBJECT)* objs; /* object stack cache */ +#endif #if defined(OPENSSL_ALL) || defined(WOLFSSL_QT) WOLFSSL_X509_STORE_CTX_verify_cb verify_cb; #endif @@ -523,13 +566,28 @@ struct WOLFSSL_X509_STORE { }; #define WOLFSSL_NO_WILDCARDS 0x4 + +#if defined(OPENSSL_ALL) || defined(OPENSSL_EXTRA) || \ + defined(WOLFSSL_WPAS_SMALL) || defined(WOLFSSL_IP_ALT_NAME) + #define WOLFSSL_MAX_IPSTR 46 /* max ip size IPv4 mapped IPv6 */ + #define WOLFSSL_IP4_ADDR_LEN 4 + #define WOLFSSL_IP6_ADDR_LEN 16 +#endif /* OPENSSL_ALL || WOLFSSL_IP_ALT_NAME */ + #if defined(OPENSSL_EXTRA) || defined(WOLFSSL_WPAS_SMALL) #define WOLFSSL_USE_CHECK_TIME 0x2 #define WOLFSSL_NO_CHECK_TIME 0x200000 #define WOLFSSL_HOST_NAME_MAX 256 -#define WOLFSSL_MAX_IPSTR 46 /* max ip size IPv4 mapped IPv6 */ + +#define WOLFSSL_VPARAM_DEFAULT 0x1 +#define WOLFSSL_VPARAM_OVERWRITE 0x2 +#define WOLFSSL_VPARAM_RESET_FLAGS 0x4 +#define WOLFSSL_VPARAM_LOCKED 0x8 +#define WOLFSSL_VPARAM_ONCE 0x10 + struct WOLFSSL_X509_VERIFY_PARAM { time_t check_time; + unsigned int inherit_flags; unsigned long flags; char hostName[WOLFSSL_HOST_NAME_MAX]; unsigned int hostFlags; @@ -551,8 +609,14 @@ typedef struct WOLFSSL_X509_REVOKED { WOLFSSL_ASN1_INTEGER* serialNumber; /* stunnel dereference */ } WOLFSSL_X509_REVOKED; +typedef enum { + WOLFSSL_X509_LU_NONE = 0, + WOLFSSL_X509_LU_X509, + WOLFSSL_X509_LU_CRL +} WOLFSSL_X509_LOOKUP_TYPE; typedef struct WOLFSSL_X509_OBJECT { + WOLFSSL_X509_LOOKUP_TYPE type; union { char* ptr; WOLFSSL_X509 *x509; @@ -596,6 +660,25 @@ struct WOLFSSL_X509_STORE_CTX { typedef char* WOLFSSL_STRING; +typedef struct WOLFSSL_RAND_METHOD { + /* seed = Data to mix into the random generator. + * len = Number of bytes to mix from seed. */ + int (*seed)(const void* seed, int len); + /* buf = Buffer to store random bytes in. + * len = Number of bytes to store in buf. */ + int (*bytes)(unsigned char* buf, int len); + void (*cleanup)(void); + /* add = Data to mix into the random generator. + * len = Number of bytes to mix from add. + * entropy = Estimate of randomness contained in seed. + * Should be between 0 and len. */ + int (*add)(const void* add, int len, double entropy); + /* buf = Buffer to store pseudorandom bytes in. + * len = Number of bytes to store in buf. */ + int (*pseudorand)(unsigned char *buf, int len); + int (*status)(void); +} WOLFSSL_RAND_METHOD; + /* Valid Alert types from page 16/17 * Add alert string to the function wolfSSL_alert_type_string_long in src/ssl.c */ @@ -639,6 +722,35 @@ enum AlertLevel { alert_fatal = 2 }; +enum SNICbReturn { + warning_return = alert_warning, + fatal_return = alert_fatal, + noack_return, +}; + +/* WS_RETURN_CODE macro + * Some OpenSSL APIs specify "0" as the return value when an error occurs. + * However, some corresponding wolfSSL APIs return negative values. Such + * functions should use this macro to fill this gap. Users who want them + * to return the same return value as OpenSSL can define + * WOLFSSL_ERR_CODE_OPENSSL. + * Give item1 a variable that contains the potentially negative + * wolfSSL-defined return value or the return value itself, and + * give item2 the openSSL-defined return value. + * Note that this macro replaces only negative return values with the + * specified value. + * Since wolfSSL 4.7.0, the following functions use this macro: + * - wolfSSL_CTX_load_verify_locations + * - wolfSSL_X509_LOOKUP_load_file + * - wolfSSL_EVP_PKEY_cmp + */ +#if defined(WOLFSSL_ERROR_CODE_OPENSSL) + #define WS_RETURN_CODE(item1,item2) \ + ((item1 < 0) ? item2 : item1) +#else + #define WS_RETURN_CODE(item1,item2) (item1) +#endif + /* Maximum master key length (SECRET_LEN) */ #define WOLFSSL_MAX_MASTER_KEY_LENGTH 48 /* Maximum number of groups that can be set */ @@ -785,12 +897,23 @@ WOLFSSL_ABI WOLFSSL_API int wolfSSL_CTX_use_PrivateKey_file(WOLFSSL_CTX*, #define WOLFSSL_LOAD_FLAG_IGNORE_ERR 0x00000001 #define WOLFSSL_LOAD_FLAG_DATE_ERR_OKAY 0x00000002 #define WOLFSSL_LOAD_FLAG_PEM_CA_ONLY 0x00000004 +#if defined(WOLFSSL_QT) +#define WOLFSSL_LOAD_FLAG_IGNORE_BAD_PATH_ERR 0x00000008 +#define WOLFSSL_LOAD_FLAG_IGNORE_ZEROFILE 0x00000010 +#endif #ifndef WOLFSSL_LOAD_VERIFY_DEFAULT_FLAGS #define WOLFSSL_LOAD_VERIFY_DEFAULT_FLAGS WOLFSSL_LOAD_FLAG_NONE #endif + +WOLFSSL_API long wolfSSL_get_verify_depth(WOLFSSL* ssl); +WOLFSSL_API long wolfSSL_CTX_get_verify_depth(WOLFSSL_CTX* ctx); +WOLFSSL_API void wolfSSL_CTX_set_verify_depth(WOLFSSL_CTX *ctx,int depth); #endif /* !NO_CERTS */ +#define WOLFSSL_CIPHER_SUITE_FLAG_NONE 0x0 +#define WOLFSSL_CIPHER_SUITE_FLAG_NAMEALIAS 0x1 + #if !defined(NO_FILESYSTEM) && !defined(NO_CERTS) WOLFSSL_API int wolfSSL_CTX_load_verify_locations_ex(WOLFSSL_CTX*, const char*, @@ -806,9 +929,6 @@ WOLFSSL_API int wolfSSL_CTX_use_certificate_chain_file_format(WOLFSSL_CTX *, const char *file, int format); WOLFSSL_API int wolfSSL_CTX_use_RSAPrivateKey_file(WOLFSSL_CTX*, const char*, int); -WOLFSSL_API long wolfSSL_get_verify_depth(WOLFSSL* ssl); -WOLFSSL_API long wolfSSL_CTX_get_verify_depth(WOLFSSL_CTX* ctx); -WOLFSSL_API void wolfSSL_CTX_set_verify_depth(WOLFSSL_CTX *ctx,int depth); WOLFSSL_ABI WOLFSSL_API int wolfSSL_use_certificate_file(WOLFSSL*, const char*, int); WOLFSSL_ABI WOLFSSL_API int wolfSSL_use_PrivateKey_file(WOLFSSL*, const char*, @@ -835,10 +955,17 @@ WOLFSSL_API WOLFSSL_CTX* wolfSSL_CTX_new_ex(WOLFSSL_METHOD* method, void* heap); WOLFSSL_ABI WOLFSSL_API WOLFSSL_CTX* wolfSSL_CTX_new(WOLFSSL_METHOD*); #ifdef OPENSSL_EXTRA WOLFSSL_API int wolfSSL_CTX_up_ref(WOLFSSL_CTX*); +WOLFSSL_API int wolfSSL_CTX_set_ecdh_auto(WOLFSSL_CTX* ctx, int onoff); +WOLFSSL_API int wolfSSL_get_signature_nid(WOLFSSL* ssl, int* nid); +WOLFSSL_API int wolfSSL_CTX_set1_sigalgs_list(WOLFSSL_CTX* ctx, + const char* list); +WOLFSSL_API int wolfSSL_set1_sigalgs_list(WOLFSSL* ssl, const char* list); #endif WOLFSSL_ABI WOLFSSL_API WOLFSSL* wolfSSL_new(WOLFSSL_CTX*); WOLFSSL_API WOLFSSL_CTX* wolfSSL_get_SSL_CTX(WOLFSSL* ssl); +WOLFSSL_API WOLFSSL_X509_VERIFY_PARAM* wolfSSL_CTX_get0_param(WOLFSSL_CTX* ctx); WOLFSSL_API WOLFSSL_X509_VERIFY_PARAM* wolfSSL_get0_param(WOLFSSL* ssl); +WOLFSSL_API int wolfSSL_CTX_set1_param(WOLFSSL_CTX* ctx, WOLFSSL_X509_VERIFY_PARAM *vpm); WOLFSSL_API int wolfSSL_is_server(WOLFSSL*); WOLFSSL_API WOLFSSL* wolfSSL_write_dup(WOLFSSL*); WOLFSSL_ABI WOLFSSL_API int wolfSSL_set_fd (WOLFSSL*, int); @@ -853,6 +980,8 @@ WOLFSSL_API const char* wolfSSL_get_cipher_name_from_suite(const unsigned char, const unsigned char); WOLFSSL_API const char* wolfSSL_get_cipher_name_iana_from_suite( const unsigned char, const unsigned char); +WOLFSSL_API int wolfSSL_get_cipher_suite_from_name(const char* name, + byte* cipherSuite0, byte* cipherSuite, int* flags); WOLFSSL_API const char* wolfSSL_get_shared_ciphers(WOLFSSL* ssl, char* buf, int len); WOLFSSL_API const char* wolfSSL_get_curve_name(WOLFSSL* ssl); @@ -873,6 +1002,7 @@ WOLFSSL_API int wolfSSL_no_ticket_TLSv13(WOLFSSL* ssl); WOLFSSL_API int wolfSSL_CTX_no_dhe_psk(WOLFSSL_CTX* ctx); WOLFSSL_API int wolfSSL_no_dhe_psk(WOLFSSL* ssl); WOLFSSL_API int wolfSSL_update_keys(WOLFSSL* ssl); +WOLFSSL_API int wolfSSL_key_update_response(WOLFSSL* ssl, int* required); WOLFSSL_API int wolfSSL_CTX_allow_post_handshake_auth(WOLFSSL_CTX* ctx); WOLFSSL_API int wolfSSL_allow_post_handshake_auth(WOLFSSL* ssl); WOLFSSL_API int wolfSSL_request_certificate(WOLFSSL* ssl); @@ -885,10 +1015,21 @@ WOLFSSL_API int wolfSSL_CTX_set_groups(WOLFSSL_CTX* ctx, int* groups, int count); WOLFSSL_API int wolfSSL_set_groups(WOLFSSL* ssl, int* groups, int count); +#ifdef OPENSSL_EXTRA +WOLFSSL_API int wolfSSL_CTX_set1_groups(WOLFSSL_CTX* ctx, int* groups, + int count); +WOLFSSL_API int wolfSSL_set1_groups(WOLFSSL* ssl, int* groups, int count); +#endif + WOLFSSL_API int wolfSSL_connect_TLSv13(WOLFSSL*); WOLFSSL_API int wolfSSL_accept_TLSv13(WOLFSSL*); #ifdef WOLFSSL_EARLY_DATA + +#define WOLFSSL_EARLY_DATA_NOT_SENT 0 +#define WOLFSSL_EARLY_DATA_REJECTED 1 +#define WOLFSSL_EARLY_DATA_ACCEPTED 2 + WOLFSSL_API int wolfSSL_CTX_set_max_early_data(WOLFSSL_CTX* ctx, unsigned int sz); WOLFSSL_API int wolfSSL_set_max_early_data(WOLFSSL* ssl, unsigned int sz); @@ -896,6 +1037,7 @@ WOLFSSL_API int wolfSSL_write_early_data(WOLFSSL* ssl, const void* data, int sz, int* outSz); WOLFSSL_API int wolfSSL_read_early_data(WOLFSSL* ssl, void* data, int sz, int* outSz); +WOLFSSL_API int wolfSSL_get_early_data_status(const WOLFSSL* ssl); #endif /* WOLFSSL_EARLY_DATA */ #endif /* WOLFSSL_TLS13 */ WOLFSSL_ABI WOLFSSL_API void wolfSSL_CTX_free(WOLFSSL_CTX*); @@ -950,6 +1092,25 @@ WOLFSSL_API WOLFSSL_X509* wolfSSL_SESSION_get0_peer(WOLFSSL_SESSION* session); typedef int (*VerifyCallback)(int, WOLFSSL_X509_STORE_CTX*); typedef void (CallbackInfoState)(const WOLFSSL*, int, int); +/* class index for wolfSSL_CRYPTO_get_ex_new_index */ +#define CRYPTO_EX_INDEX_SSL 0 +#define CRYPTO_EX_INDEX_SSL_CTX 1 +#define CRYPTO_EX_INDEX_SSL_SESSION 2 +#define CRYPTO_EX_INDEX_X509 3 +#define CRYPTO_EX_INDEX_X509_STORE 4 +#define CRYPTO_EX_INDEX_X509_STORE_CTX 5 +#define CRYPTO_EX_INDEX_DH 6 +#define CRYPTO_EX_INDEX_DSA 7 +#define CRYPTO_EX_INDEX_EC_KEY 8 +#define CRYPTO_EX_INDEX_RSA 9 +#define CRYPTO_EX_INDEX_ENGINE 10 +#define CRYPTO_EX_INDEX_UI 11 +#define CRYPTO_EX_INDEX_BIO 12 +#define CRYPTO_EX_INDEX_APP 13 +#define CRYPTO_EX_INDEX_UI_METHOD 14 +#define CRYPTO_EX_INDEX_DRBG 15 +#define CRYPTO_EX_INDEX__COUNT 16 + #if defined(HAVE_EX_DATA) || defined(FORTRESS) typedef int (WOLFSSL_CRYPTO_EX_new)(void* p, void* ptr, WOLFSSL_CRYPTO_EX_DATA* a, int idx, long argValue, void* arg); @@ -961,9 +1122,10 @@ typedef void (WOLFSSL_CRYPTO_EX_free)(void* p, void* ptr, WOLFSSL_API int wolfSSL_get_ex_new_index(long argValue, void* arg, WOLFSSL_CRYPTO_EX_new* a, WOLFSSL_CRYPTO_EX_dup* b, WOLFSSL_CRYPTO_EX_free* c); + #endif -WOLFSSL_API void wolfSSL_CTX_set_verify(WOLFSSL_CTX*, int, +WOLFSSL_ABI WOLFSSL_API void wolfSSL_CTX_set_verify(WOLFSSL_CTX*, int, VerifyCallback verify_callback); #ifdef OPENSSL_ALL @@ -974,6 +1136,14 @@ WOLFSSL_API void wolfSSL_CTX_set_cert_verify_callback(WOLFSSL_CTX* ctx, WOLFSSL_API void wolfSSL_set_verify(WOLFSSL*, int, VerifyCallback verify_callback); WOLFSSL_API void wolfSSL_set_verify_result(WOLFSSL*, long); + +#if defined(OPENSSL_EXTRA) && !defined(NO_CERTS) && \ + defined(WOLFSSL_TLS13) && defined(WOLFSSL_POST_HANDSHAKE_AUTH) +WOLFSSL_API int wolfSSL_verify_client_post_handshake(WOLFSSL*); +WOLFSSL_API int wolfSSL_CTX_set_post_handshake_auth(WOLFSSL_CTX*, int); +WOLFSSL_API int wolfSSL_set_post_handshake_auth(WOLFSSL*, int); +#endif + WOLFSSL_API void wolfSSL_SetCertCbCtx(WOLFSSL*, void*); WOLFSSL_ABI WOLFSSL_API int wolfSSL_pending(WOLFSSL*); @@ -1013,6 +1183,46 @@ WOLFSSL_API int wolfSSL_CTX_get_cert_cache_memsize(WOLFSSL_CTX*); WOLFSSL_API int wolfSSL_CTX_set_cipher_list(WOLFSSL_CTX*, const char*); WOLFSSL_API int wolfSSL_set_cipher_list(WOLFSSL*, const char*); +#ifdef HAVE_KEYING_MATERIAL +/* Keying Material Exporter for TLS */ +WOLFSSL_API int wolfSSL_export_keying_material(WOLFSSL *ssl, + unsigned char *out, size_t outLen, + const char *label, size_t labelLen, + const unsigned char *context, size_t contextLen, + int use_context); +#endif /* HAVE_KEYING_MATERIAL */ + +#ifdef WOLFSSL_WOLFSENTRY_HOOKS + +typedef enum { + WOLFSSL_NETFILTER_PASS = 0, + WOLFSSL_NETFILTER_ACCEPT = 1, + WOLFSSL_NETFILTER_REJECT = 2 +} wolfSSL_netfilter_decision_t; + +typedef int (*NetworkFilterCallback_t)( + WOLFSSL *ssl, + void *AcceptFilter_arg, + wolfSSL_netfilter_decision_t *decision); +WOLFSSL_API int wolfSSL_CTX_set_AcceptFilter( + WOLFSSL_CTX *ctx, + NetworkFilterCallback_t AcceptFilter, + void *AcceptFilter_arg); +WOLFSSL_API int wolfSSL_set_AcceptFilter( + WOLFSSL *ssl, + NetworkFilterCallback_t AcceptFilter, + void *AcceptFilter_arg); +WOLFSSL_API int wolfSSL_CTX_set_ConnectFilter( + WOLFSSL_CTX *ctx, + NetworkFilterCallback_t ConnectFilter, + void *ConnectFilter_arg); +WOLFSSL_API int wolfSSL_set_ConnectFilter( + WOLFSSL *ssl, + NetworkFilterCallback_t ConnectFilter, + void *ConnectFilter_arg); + +#endif /* WOLFSSL_WOLFSENTRY_HOOKS */ + /* Nonblocking DTLS helper functions */ WOLFSSL_API void wolfSSL_dtls_set_using_nonblock(WOLFSSL*, int); WOLFSSL_API int wolfSSL_dtls_get_using_nonblock(WOLFSSL*); @@ -1067,23 +1277,11 @@ WOLFSSL_API char* wolfSSL_ERR_error_string(unsigned long,char*); WOLFSSL_API void wolfSSL_ERR_error_string_n(unsigned long e, char* buf, unsigned long sz); WOLFSSL_API const char* wolfSSL_ERR_reason_error_string(unsigned long); +WOLFSSL_API const char* wolfSSL_ERR_func_error_string(unsigned long); +WOLFSSL_API const char* wolfSSL_ERR_lib_error_string(unsigned long); /* extras */ - -/* for now LHASH is not implemented */ -typedef int WOLFSSL_LHASH; -#ifndef WOLF_LHASH_OF - #define WOLF_LHASH_OF(x) WOLFSSL_LHASH -#endif - -#ifndef WOLF_STACK_OF - #define WOLF_STACK_OF(x) WOLFSSL_STACK -#endif -#ifndef DECLARE_STACK_OF - #define DECLARE_STACK_OF(x) WOLF_STACK_OF(x); -#endif - WOLFSSL_API WOLFSSL_STACK* wolfSSL_sk_new_node(void* heap); WOLFSSL_API void wolfSSL_sk_free(WOLFSSL_STACK* sk); WOLFSSL_API void wolfSSL_sk_free_node(WOLFSSL_STACK* in); @@ -1148,10 +1346,18 @@ WOLFSSL_API void wolfSSL_sk_ASN1_OBJECT_pop_free( WOLF_STACK_OF(WOLFSSL_ASN1_OBJECT)* sk, void (*f)(WOLFSSL_ASN1_OBJECT*)); WOLFSSL_API int wolfSSL_ASN1_STRING_to_UTF8(unsigned char **out, WOLFSSL_ASN1_STRING *in); +WOLFSSL_API int wolfSSL_ASN1_UNIVERSALSTRING_to_string(WOLFSSL_ASN1_STRING *s); WOLFSSL_API int wolfSSL_sk_X509_EXTENSION_num(WOLF_STACK_OF(WOLFSSL_X509_EXTENSION)* sk); WOLFSSL_API WOLFSSL_X509_EXTENSION* wolfSSL_sk_X509_EXTENSION_value( WOLF_STACK_OF(WOLFSSL_X509_EXTENSION)* sk, int idx); WOLFSSL_API int wolfSSL_set_ex_data(WOLFSSL*, int, void*); +#ifdef HAVE_EX_DATA_CLEANUP_HOOKS +WOLFSSL_API int wolfSSL_set_ex_data_with_cleanup( + WOLFSSL* ssl, + int idx, + void* data, + wolfSSL_ex_data_cleanup_routine_t cleanup_routine); +#endif WOLFSSL_API int wolfSSL_get_shutdown(const WOLFSSL*); WOLFSSL_API int wolfSSL_set_rfd(WOLFSSL*, int); WOLFSSL_API int wolfSSL_set_wfd(WOLFSSL*, int); @@ -1165,6 +1371,8 @@ WOLFSSL_API int wolfSSL_SESSION_up_ref(WOLFSSL_SESSION* session); WOLFSSL_API WOLFSSL_SESSION* wolfSSL_SESSION_dup(WOLFSSL_SESSION* session); WOLFSSL_API WOLFSSL_SESSION* wolfSSL_SESSION_new(void); WOLFSSL_API void wolfSSL_SESSION_free(WOLFSSL_SESSION* session); +WOLFSSL_API int wolfSSL_SESSION_set_cipher(WOLFSSL_SESSION* session, + const WOLFSSL_CIPHER* cipher); WOLFSSL_API int wolfSSL_is_init_finished(WOLFSSL*); WOLFSSL_API const char* wolfSSL_get_version(const WOLFSSL*); @@ -1182,10 +1390,12 @@ WOLFSSL_API WOLFSSL_SESSION* wolfSSL_get1_session(WOLFSSL* ssl); /* what's ref count */ WOLFSSL_API WOLFSSL_X509* wolfSSL_X509_new(void); -#if defined(OPENSSL_EXTRA_X509_SMALL) || defined(OPENSSL_ALL) +#if defined(OPENSSL_EXTRA_X509_SMALL) || defined(OPENSSL_EXTRA) WOLFSSL_API int wolfSSL_RSA_up_ref(WOLFSSL_RSA* rsa); WOLFSSL_API int wolfSSL_X509_up_ref(WOLFSSL_X509* x509); WOLFSSL_API int wolfSSL_EVP_PKEY_up_ref(WOLFSSL_EVP_PKEY* pkey); +WOLFSSL_API WOLF_STACK_OF(WOLFSSL_X509)* + wolfSSL_X509_chain_up_ref(WOLF_STACK_OF(WOLFSSL_X509)* chain); #endif WOLFSSL_API int wolfSSL_OCSP_parse_url(char* url, char** host, char** port, @@ -1195,10 +1405,14 @@ WOLFSSL_API WOLFSSL_METHOD* wolfSSLv23_client_method(void); WOLFSSL_API WOLFSSL_METHOD* wolfSSLv2_client_method(void); WOLFSSL_API WOLFSSL_METHOD* wolfSSLv2_server_method(void); +#if defined(OPENSSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER >= 0x10100000L +WOLFSSL_API WOLFSSL_BIO* wolfSSL_BIO_new(const WOLFSSL_BIO_METHOD*); +#else WOLFSSL_API WOLFSSL_BIO* wolfSSL_BIO_new(WOLFSSL_BIO_METHOD*); +#endif WOLFSSL_API int wolfSSL_BIO_free(WOLFSSL_BIO*); WOLFSSL_API void wolfSSL_BIO_vfree(WOLFSSL_BIO*); -WOLFSSL_API int wolfSSL_BIO_free_all(WOLFSSL_BIO*); +WOLFSSL_API void wolfSSL_BIO_free_all(WOLFSSL_BIO*); WOLFSSL_API int wolfSSL_BIO_gets(WOLFSSL_BIO* bio, char* buf, int sz); WOLFSSL_API int wolfSSL_BIO_puts(WOLFSSL_BIO* bio, const char* buf); WOLFSSL_API WOLFSSL_BIO* wolfSSL_BIO_next(WOLFSSL_BIO* bio); @@ -1230,6 +1444,13 @@ WOLFSSL_API WOLFSSL_BIO_METHOD* wolfSSL_BIO_f_base64(void); WOLFSSL_API void wolfSSL_BIO_set_flags(WOLFSSL_BIO*, int); WOLFSSL_API void wolfSSL_BIO_clear_flags(WOLFSSL_BIO *bio, int flags); WOLFSSL_API int wolfSSL_BIO_set_ex_data(WOLFSSL_BIO *bio, int idx, void *data); +#ifdef HAVE_EX_DATA_CLEANUP_HOOKS +WOLFSSL_API int wolfSSL_BIO_set_ex_data_with_cleanup( + WOLFSSL_BIO *bio, + int idx, + void *data, + wolfSSL_ex_data_cleanup_routine_t cleanup_routine); +#endif WOLFSSL_API void *wolfSSL_BIO_get_ex_data(WOLFSSL_BIO *bio, int idx); WOLFSSL_API long wolfSSL_BIO_set_nbio(WOLFSSL_BIO*, long); @@ -1263,11 +1484,18 @@ WOLFSSL_API void wolfSSL_set_bio(WOLFSSL*, WOLFSSL_BIO* rd, WOLFSSL_BIO* wr); #ifndef NO_FILESYSTEM WOLFSSL_API WOLFSSL_BIO_METHOD *wolfSSL_BIO_s_file(void); +WOLFSSL_API WOLFSSL_BIO *wolfSSL_BIO_new_fd(int fd, int close_flag); #endif WOLFSSL_API WOLFSSL_BIO_METHOD *wolfSSL_BIO_s_bio(void); WOLFSSL_API WOLFSSL_BIO_METHOD *wolfSSL_BIO_s_socket(void); +WOLFSSL_API WOLFSSL_BIO *wolfSSL_BIO_new_connect(const char *str); +WOLFSSL_API long wolfSSL_BIO_set_conn_port(WOLFSSL_BIO *b, char* port); +WOLFSSL_API long wolfSSL_BIO_do_connect(WOLFSSL_BIO *b); + +WOLFSSL_API long wolfSSL_BIO_do_handshake(WOLFSSL_BIO *b); + WOLFSSL_API long wolfSSL_BIO_ctrl(WOLFSSL_BIO *bp, int cmd, long larg, void *parg); WOLFSSL_API long wolfSSL_BIO_int_ctrl(WOLFSSL_BIO *bp, int cmd, long larg, int iarg); @@ -1280,6 +1508,7 @@ WOLFSSL_API int wolfSSL_BIO_nwrite(WOLFSSL_BIO *bio, char **buf, int num); WOLFSSL_API int wolfSSL_BIO_reset(WOLFSSL_BIO *bio); WOLFSSL_API int wolfSSL_BIO_seek(WOLFSSL_BIO *bio, int ofs); +WOLFSSL_API int wolfSSL_BIO_tell(WOLFSSL_BIO* bio); WOLFSSL_API int wolfSSL_BIO_write_filename(WOLFSSL_BIO *bio, char *name); WOLFSSL_API long wolfSSL_BIO_set_mem_eof_return(WOLFSSL_BIO *bio, int v); WOLFSSL_API long wolfSSL_BIO_get_mem_ptr(WOLFSSL_BIO *bio, WOLFSSL_BUF_MEM **m); @@ -1322,6 +1551,8 @@ WOLFSSL_API void wolfSSL_X509_STORE_set_verify_cb(WOLFSSL_X509_STORE *st, WOLFSSL_X509_STORE_CTX_verify_cb verify_cb); WOLFSSL_API int wolfSSL_i2d_X509_NAME(WOLFSSL_X509_NAME* n, unsigned char** out); +WOLFSSL_API int wolfSSL_i2d_X509_NAME_canon(WOLFSSL_X509_NAME* name, + unsigned char** out); WOLFSSL_API WOLFSSL_X509_NAME *wolfSSL_d2i_X509_NAME(WOLFSSL_X509_NAME **name, unsigned char **in, long length); #ifndef NO_RSA @@ -1329,9 +1560,17 @@ WOLFSSL_API int wolfSSL_RSA_print(WOLFSSL_BIO* bio, WOLFSSL_RSA* rsa, int offset #endif WOLFSSL_API int wolfSSL_X509_print_ex(WOLFSSL_BIO* bio, WOLFSSL_X509* x509, unsigned long nmflags, unsigned long cflag); +#ifndef NO_FILESYSTEM +WOLFSSL_API int wolfSSL_X509_print_fp(XFILE fp, WOLFSSL_X509 *x509); +#endif +WOLFSSL_API int wolfSSL_X509_signature_print(WOLFSSL_BIO *bp, + const WOLFSSL_X509_ALGOR *sigalg, const WOLFSSL_ASN1_STRING *sig); +WOLFSSL_API void wolfSSL_X509_get0_signature(const WOLFSSL_ASN1_BIT_STRING **psig, + const WOLFSSL_X509_ALGOR **palg, const WOLFSSL_X509 *x509); WOLFSSL_API int wolfSSL_X509_print(WOLFSSL_BIO* bio, WOLFSSL_X509* x509); WOLFSSL_ABI WOLFSSL_API char* wolfSSL_X509_NAME_oneline(WOLFSSL_X509_NAME*, char*, int); +WOLFSSL_API unsigned long wolfSSL_X509_NAME_hash(WOLFSSL_X509_NAME*); #if defined(OPENSSL_EXTRA) && defined(XSNPRINTF) WOLFSSL_API char* wolfSSL_X509_get_name_oneline(WOLFSSL_X509_NAME*, char*, int); #endif @@ -1353,6 +1592,9 @@ WOLFSSL_API unsigned char* wolfSSL_X509_get_subjectKeyID( WOLFSSL_X509*, unsigned char*, int*); WOLFSSL_API int wolfSSL_X509_verify(WOLFSSL_X509* x509, WOLFSSL_EVP_PKEY* pkey); +#ifdef WOLFSSL_CERT_REQ +WOLFSSL_API int wolfSSL_X509_REQ_verify(WOLFSSL_X509* x509, WOLFSSL_EVP_PKEY* pkey); +#endif WOLFSSL_API int wolfSSL_X509_set_subject_name(WOLFSSL_X509*, WOLFSSL_X509_NAME*); WOLFSSL_API int wolfSSL_X509_set_issuer_name(WOLFSSL_X509*, @@ -1369,6 +1611,7 @@ WOLFSSL_API int wolfSSL_X509_set_serialNumber(WOLFSSL_X509* x509, WOLFSSL_API int wolfSSL_X509_set_version(WOLFSSL_X509* x509, long v); WOLFSSL_API int wolfSSL_X509_sign(WOLFSSL_X509* x509, WOLFSSL_EVP_PKEY* pkey, const WOLFSSL_EVP_MD* md); +WOLFSSL_API int wolfSSL_X509_sign_ctx(WOLFSSL_X509 *x509, WOLFSSL_EVP_MD_CTX *ctx); WOLFSSL_API int wolfSSL_X509_NAME_entry_count(WOLFSSL_X509_NAME*); @@ -1383,11 +1626,16 @@ WOLFSSL_API WOLFSSL_ASN1_STRING* wolfSSL_ASN1_STRING_dup(WOLFSSL_ASN1_STRING* as WOLFSSL_API WOLFSSL_ASN1_STRING* wolfSSL_ASN1_STRING_type_new(int type); WOLFSSL_API int wolfSSL_ASN1_STRING_type(const WOLFSSL_ASN1_STRING* asn1); WOLFSSL_API WOLFSSL_ASN1_STRING* wolfSSL_d2i_DISPLAYTEXT(WOLFSSL_ASN1_STRING **asn, const unsigned char **in, long len); +WOLFSSL_API int wolfSSL_ASN1_STRING_cmp(const WOLFSSL_ASN1_STRING *a, const WOLFSSL_ASN1_STRING *b); WOLFSSL_API void wolfSSL_ASN1_STRING_free(WOLFSSL_ASN1_STRING* asn1); WOLFSSL_API int wolfSSL_ASN1_STRING_set(WOLFSSL_ASN1_STRING* asn1, const void* data, int dataSz); WOLFSSL_API unsigned char* wolfSSL_ASN1_STRING_data(WOLFSSL_ASN1_STRING*); +WOLFSSL_API const unsigned char* wolfSSL_ASN1_STRING_get0_data( + const WOLFSSL_ASN1_STRING*); WOLFSSL_API int wolfSSL_ASN1_STRING_length(WOLFSSL_ASN1_STRING*); +WOLFSSL_API int wolfSSL_ASN1_STRING_copy(WOLFSSL_ASN1_STRING* dst, + const WOLFSSL_ASN1_STRING* src); WOLFSSL_API int wolfSSL_X509_verify_cert(WOLFSSL_X509_STORE_CTX*); WOLFSSL_API const char* wolfSSL_X509_verify_cert_error_string(long); WOLFSSL_API int wolfSSL_X509_get_signature_type(WOLFSSL_X509*); @@ -1401,6 +1649,8 @@ WOLFSSL_API int wolfSSL_X509_LOOKUP_load_file(WOLFSSL_X509_LOOKUP*, const char*, long); WOLFSSL_API WOLFSSL_X509_LOOKUP_METHOD* wolfSSL_X509_LOOKUP_hash_dir(void); WOLFSSL_API WOLFSSL_X509_LOOKUP_METHOD* wolfSSL_X509_LOOKUP_file(void); +WOLFSSL_API int wolfSSL_X509_LOOKUP_ctrl(WOLFSSL_X509_LOOKUP *ctx, int cmd, + const char *argc, long argl, char **ret); WOLFSSL_API WOLFSSL_X509_LOOKUP* wolfSSL_X509_STORE_add_lookup(WOLFSSL_X509_STORE*, WOLFSSL_X509_LOOKUP_METHOD*); @@ -1412,6 +1662,8 @@ WOLFSSL_API WOLFSSL_STACK* wolfSSL_X509_STORE_CTX_get_chain( WOLFSSL_X509_STORE_CTX* ctx); WOLFSSL_API WOLFSSL_STACK* wolfSSL_X509_STORE_CTX_get1_chain( WOLFSSL_X509_STORE_CTX* ctx); +WOLFSSL_API WOLFSSL_X509_STORE_CTX *wolfSSL_X509_STORE_CTX_get0_parent_ctx( + WOLFSSL_X509_STORE_CTX *ctx); WOLFSSL_API int wolfSSL_X509_STORE_set_flags(WOLFSSL_X509_STORE* store, unsigned long flag); WOLFSSL_API int wolfSSL_X509_STORE_set_default_paths(WOLFSSL_X509_STORE*); @@ -1422,10 +1674,12 @@ WOLFSSL_API int wolfSSL_X509_STORE_CTX_init(WOLFSSL_X509_STORE_CTX*, WOLFSSL_X509_STORE*, WOLFSSL_X509*, WOLF_STACK_OF(WOLFSSL_X509)*); WOLFSSL_API void wolfSSL_X509_STORE_CTX_free(WOLFSSL_X509_STORE_CTX*); WOLFSSL_API void wolfSSL_X509_STORE_CTX_cleanup(WOLFSSL_X509_STORE_CTX*); +WOLFSSL_API void wolfSSL_X509_STORE_CTX_trusted_stack(WOLFSSL_X509_STORE_CTX *ctx, + WOLF_STACK_OF(WOLFSSL_X509) *sk); WOLFSSL_API WOLFSSL_ASN1_TIME* wolfSSL_X509_CRL_get_lastUpdate(WOLFSSL_X509_CRL*); WOLFSSL_API WOLFSSL_ASN1_TIME* wolfSSL_X509_CRL_get_nextUpdate(WOLFSSL_X509_CRL*); -WOLFSSL_ASN1_TIME* wolfSSL_X509_gmtime_adj(WOLFSSL_ASN1_TIME *s, long adj); +WOLFSSL_API WOLFSSL_ASN1_TIME* wolfSSL_X509_gmtime_adj(WOLFSSL_ASN1_TIME *s, long adj); WOLFSSL_API WOLFSSL_EVP_PKEY* wolfSSL_X509_get_pubkey(WOLFSSL_X509*); WOLFSSL_API int wolfSSL_X509_CRL_verify(WOLFSSL_X509_CRL*, WOLFSSL_EVP_PKEY*); @@ -1443,6 +1697,11 @@ WOLFSSL_API WOLFSSL_EVP_PKEY* wolfSSL_d2i_PrivateKey_EVP(WOLFSSL_EVP_PKEY** key, unsigned char** in, long inSz); WOLFSSL_API int wolfSSL_i2d_PrivateKey(const WOLFSSL_EVP_PKEY* key, unsigned char** der); +#if defined(OPENSSL_EXTRA) +WOLFSSL_API int wolfSSL_EVP_PKEY_print_public(WOLFSSL_BIO* out, + const WOLFSSL_EVP_PKEY* pkey, + int indent, WOLFSSL_ASN1_PCTX* pctx); +#endif /* OPENSSL_EXTRA */ WOLFSSL_API int wolfSSL_X509_cmp_current_time(const WOLFSSL_ASN1_TIME*); #ifdef OPENSSL_EXTRA WOLFSSL_API int wolfSSL_X509_cmp_time(const WOLFSSL_ASN1_TIME* asnTime, @@ -1455,6 +1714,13 @@ WOLFSSL_API int wolfSSL_sk_X509_REVOKED_num(WOLFSSL_X509_REVOKED*); WOLFSSL_API void wolfSSL_X509_STORE_CTX_set_time(WOLFSSL_X509_STORE_CTX*, unsigned long flags, time_t t); +WOLFSSL_API WOLFSSL_X509_VERIFY_PARAM* wolfSSL_X509_VERIFY_PARAM_new(void); +WOLFSSL_API void wolfSSL_X509_VERIFY_PARAM_free(WOLFSSL_X509_VERIFY_PARAM *param); +WOLFSSL_API int wolfSSL_X509_VERIFY_PARAM_set_flags(WOLFSSL_X509_VERIFY_PARAM *param, + unsigned long flags); +WOLFSSL_API int wolfSSL_X509_VERIFY_PARAM_get_flags(WOLFSSL_X509_VERIFY_PARAM *param); +WOLFSSL_API int wolfSSL_X509_VERIFY_PARAM_clear_flags(WOLFSSL_X509_VERIFY_PARAM *param, + unsigned long flags); WOLFSSL_API void wolfSSL_X509_VERIFY_PARAM_set_hostflags( WOLFSSL_X509_VERIFY_PARAM* param, unsigned int flags); WOLFSSL_API int wolfSSL_X509_VERIFY_PARAM_set1_host(WOLFSSL_X509_VERIFY_PARAM* pParam, @@ -1462,6 +1728,12 @@ WOLFSSL_API int wolfSSL_X509_VERIFY_PARAM_set1_host(WOLFSSL_X509_VERIFY_PARAM* p unsigned int nameSz); WOLFSSL_API int wolfSSL_X509_VERIFY_PARAM_set1_ip_asc( WOLFSSL_X509_VERIFY_PARAM *param, const char *ipasc); +WOLFSSL_API int wolfSSL_X509_VERIFY_PARAM_set1(WOLFSSL_X509_VERIFY_PARAM* to, + const WOLFSSL_X509_VERIFY_PARAM* from); +WOLFSSL_API int wolfSSL_X509_load_crl_file(WOLFSSL_X509_LOOKUP *ctx, + const char *file, int type); +WOLFSSL_API int wolfSSL_X509_load_cert_crl_file(WOLFSSL_X509_LOOKUP *ctx, + const char *file, int type); #endif WOLFSSL_API WOLFSSL_X509_REVOKED* wolfSSL_X509_CRL_get_REVOKED(WOLFSSL_X509_CRL*); WOLFSSL_API WOLFSSL_X509_REVOKED* wolfSSL_sk_X509_REVOKED_value( @@ -1509,6 +1781,24 @@ WOLFSSL_API void* wolfSSL_X509_STORE_CTX_get_ex_data( WOLFSSL_X509_STORE_CTX* ctx, int idx); WOLFSSL_API int wolfSSL_X509_STORE_CTX_set_ex_data(WOLFSSL_X509_STORE_CTX* ctx, int idx, void *data); +#ifdef HAVE_EX_DATA_CLEANUP_HOOKS +WOLFSSL_API int wolfSSL_X509_STORE_CTX_set_ex_data_with_cleanup( + WOLFSSL_X509_STORE_CTX* ctx, + int idx, + void *data, + wolfSSL_ex_data_cleanup_routine_t cleanup_routine); +#endif +WOLFSSL_API void* wolfSSL_X509_STORE_get_ex_data( + WOLFSSL_X509_STORE* store, int idx); +WOLFSSL_API int wolfSSL_X509_STORE_set_ex_data(WOLFSSL_X509_STORE* store, + int idx, void *data); +#ifdef HAVE_EX_DATA_CLEANUP_HOOKS +WOLFSSL_API int wolfSSL_X509_STORE_set_ex_data_with_cleanup( + WOLFSSL_X509_STORE* store, + int idx, + void *data, + wolfSSL_ex_data_cleanup_routine_t cleanup_routine); +#endif WOLFSSL_API void wolfSSL_X509_STORE_CTX_set_depth(WOLFSSL_X509_STORE_CTX* ctx, int depth); WOLFSSL_API WOLFSSL_X509* wolfSSL_X509_STORE_CTX_get0_current_issuer( @@ -1580,6 +1870,9 @@ WOLFSSL_API long wolfSSL_CTX_set_tlsext_opaque_prf_input_callback_arg( WOLFSSL_API int wolfSSL_CTX_add_client_CA(WOLFSSL_CTX*, WOLFSSL_X509*); WOLFSSL_API int wolfSSL_CTX_set_srp_password(WOLFSSL_CTX*, char*); WOLFSSL_API int wolfSSL_CTX_set_srp_username(WOLFSSL_CTX*, char*); +WOLFSSL_API int wolfSSL_CTX_set_srp_strength(WOLFSSL_CTX *ctx, int strength); + +WOLFSSL_API char* wolfSSL_get_srp_username(WOLFSSL *ssl); WOLFSSL_API long wolfSSL_set_options(WOLFSSL *s, long op); WOLFSSL_API long wolfSSL_get_options(const WOLFSSL *s); @@ -1730,33 +2023,33 @@ enum { * and auto retry */ SSL_MODE_RELEASE_BUFFERS = -1, /* For libwebsockets build. No current use. */ - BIO_FLAGS_BASE64_NO_NL = 1, BIO_CLOSE = 1, BIO_NOCLOSE = 0, X509_FILETYPE_PEM = 8, - X509_LU_X509 = 9, - X509_LU_CRL = 12, + X509_LU_NONE = WOLFSSL_X509_LU_NONE, + X509_LU_X509 = WOLFSSL_X509_LU_X509, + X509_LU_CRL = WOLFSSL_X509_LU_CRL, X509_V_OK = 0, - X509_V_ERR_CRL_SIGNATURE_FAILURE = 13, + X509_V_ERR_CRL_SIGNATURE_FAILURE = 8, + X509_V_ERR_CERT_HAS_EXPIRED = 10, X509_V_ERR_ERROR_IN_CRL_NEXT_UPDATE_FIELD = 14, X509_V_ERR_CRL_HAS_EXPIRED = 15, - X509_V_ERR_CERT_REVOKED = 16, X509_V_ERR_CERT_CHAIN_TOO_LONG = 17, X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT = 18, X509_V_ERR_CERT_NOT_YET_VALID = 19, X509_V_ERR_ERROR_IN_CERT_NOT_BEFORE_FIELD = 20, - X509_V_ERR_CERT_HAS_EXPIRED = 21, X509_V_ERR_ERROR_IN_CERT_NOT_AFTER_FIELD = 22, - X509_V_ERR_CERT_REJECTED = 23, + X509_V_ERR_CERT_REVOKED = 23, + X509_V_ERR_CERT_REJECTED = 24, /* Required for Nginx */ - X509_V_ERR_DEPTH_ZERO_SELF_SIGNED_CERT = 24, - X509_V_ERR_SELF_SIGNED_CERT_IN_CHAIN = 25, - X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY = 26, - X509_V_ERR_CERT_UNTRUSTED = 27, - X509_V_ERR_UNABLE_TO_VERIFY_LEAF_SIGNATURE = 28, - X509_V_ERR_SUBJECT_ISSUER_MISMATCH = 29, + X509_V_ERR_DEPTH_ZERO_SELF_SIGNED_CERT = 25, + X509_V_ERR_SELF_SIGNED_CERT_IN_CHAIN = 26, + X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY = 27, + X509_V_ERR_CERT_UNTRUSTED = 28, + X509_V_ERR_UNABLE_TO_VERIFY_LEAF_SIGNATURE = 29, + X509_V_ERR_SUBJECT_ISSUER_MISMATCH = 30, /* additional X509_V_ERR_* enums not used in wolfSSL */ X509_V_ERR_UNABLE_TO_GET_CRL, X509_V_ERR_UNABLE_TO_DECRYPT_CERT_SIGNATURE, @@ -1788,12 +2081,6 @@ enum { X509_R_CERT_ALREADY_IN_HASH_TABLE, - XN_FLAG_SPC_EQ = (1 << 23), - XN_FLAG_SEP_CPLUS_SPC = (2 << 16), - XN_FLAG_ONELINE = 0, - XN_FLAG_RFC2253 = 1, - XN_FLAG_DN_REV = (1 << 20), - CRYPTO_LOCK = 1, CRYPTO_NUM_LOCKS = 10, @@ -1806,7 +2093,11 @@ enum { #if !defined(NO_FILESYSTEM) && !defined(NO_STDIO_FILESYSTEM) /* wolfSSL extension, provide last error from SSL_get_error since not using thread storage error queue */ -#include +#ifdef FUSION_RTOS + #include +#else + #include +#endif WOLFSSL_API void wolfSSL_ERR_print_errors_fp(XFILE, int err); #if defined(OPENSSL_EXTRA) || defined(DEBUG_WOLFSSL_VERBOSE) WOLFSSL_API void wolfSSL_ERR_dump_errors_fp(XFILE fp); @@ -1896,10 +2187,11 @@ enum { /* ssl Constants */ WOLFSSL_FILETYPE_RAW = 3, /* NTRU raw key blob */ WOLFSSL_VERIFY_NONE = 0, - WOLFSSL_VERIFY_PEER = 1, - WOLFSSL_VERIFY_FAIL_IF_NO_PEER_CERT = 2, - WOLFSSL_VERIFY_CLIENT_ONCE = 4, - WOLFSSL_VERIFY_FAIL_EXCEPT_PSK = 8, + WOLFSSL_VERIFY_PEER = 1 << 0, + WOLFSSL_VERIFY_FAIL_IF_NO_PEER_CERT = 1 << 1, + WOLFSSL_VERIFY_CLIENT_ONCE = 1 << 2, + WOLFSSL_VERIFY_FAIL_EXCEPT_PSK = 1 << 3, + WOLFSSL_VERIFY_DEFAULT = 1 << 9, WOLFSSL_SESS_CACHE_OFF = 0x0000, WOLFSSL_SESS_CACHE_CLIENT = 0x0001, @@ -1935,16 +2227,30 @@ enum { /* ssl Constants */ typedef unsigned int (*wc_psk_client_callback)(WOLFSSL*, const char*, char*, unsigned int, unsigned char*, unsigned int); WOLFSSL_API void wolfSSL_CTX_set_psk_client_callback(WOLFSSL_CTX*, - wc_psk_client_callback); + wc_psk_client_callback); WOLFSSL_API void wolfSSL_set_psk_client_callback(WOLFSSL*, - wc_psk_client_callback); + wc_psk_client_callback); + #ifdef OPENSSL_EXTRA + typedef int (*wc_psk_use_session_cb_func)(WOLFSSL* ssl, + const WOLFSSL_EVP_MD* md, const unsigned char **id, + size_t* idlen, WOLFSSL_SESSION **sess); + WOLFSSL_API void wolfSSL_set_psk_use_session_callback(WOLFSSL* ssl, + wc_psk_use_session_cb_func cb); + #endif #ifdef WOLFSSL_TLS13 + typedef unsigned int (*wc_psk_client_cs_callback)(WOLFSSL*, const char*, + char*, unsigned int, unsigned char*, unsigned int, const char*); + WOLFSSL_API void wolfSSL_CTX_set_psk_client_cs_callback(WOLFSSL_CTX*, + wc_psk_client_cs_callback); + WOLFSSL_API void wolfSSL_set_psk_client_cs_callback(WOLFSSL*, + wc_psk_client_cs_callback); + typedef unsigned int (*wc_psk_client_tls13_callback)(WOLFSSL*, const char*, - char*, unsigned int, unsigned char*, unsigned int, const char**); + char*, unsigned int, unsigned char*, unsigned int, const char**); WOLFSSL_API void wolfSSL_CTX_set_psk_client_tls13_callback(WOLFSSL_CTX*, - wc_psk_client_tls13_callback); + wc_psk_client_tls13_callback); WOLFSSL_API void wolfSSL_set_psk_client_tls13_callback(WOLFSSL*, - wc_psk_client_tls13_callback); + wc_psk_client_tls13_callback); #endif WOLFSSL_API const char* wolfSSL_get_psk_identity_hint(const WOLFSSL*); @@ -1956,16 +2262,16 @@ enum { /* ssl Constants */ typedef unsigned int (*wc_psk_server_callback)(WOLFSSL*, const char*, unsigned char*, unsigned int); WOLFSSL_API void wolfSSL_CTX_set_psk_server_callback(WOLFSSL_CTX*, - wc_psk_server_callback); + wc_psk_server_callback); WOLFSSL_API void wolfSSL_set_psk_server_callback(WOLFSSL*, - wc_psk_server_callback); + wc_psk_server_callback); #ifdef WOLFSSL_TLS13 typedef unsigned int (*wc_psk_server_tls13_callback)(WOLFSSL*, const char*, - unsigned char*, unsigned int, const char**); + unsigned char*, unsigned int, const char**); WOLFSSL_API void wolfSSL_CTX_set_psk_server_tls13_callback(WOLFSSL_CTX*, - wc_psk_server_tls13_callback); + wc_psk_server_tls13_callback); WOLFSSL_API void wolfSSL_set_psk_server_tls13_callback(WOLFSSL*, - wc_psk_server_tls13_callback); + wc_psk_server_tls13_callback); #endif WOLFSSL_API void* wolfSSL_get_psk_callback_ctx(WOLFSSL*); WOLFSSL_API int wolfSSL_set_psk_callback_ctx(WOLFSSL*, void*); @@ -1974,6 +2280,11 @@ enum { /* ssl Constants */ WOLFSSL_API int wolfSSL_CTX_set_psk_callback_ctx(WOLFSSL_CTX*, void*); #define PSK_TYPES_DEFINED + +#ifdef WOLFSSL_TLS13 + WOLFSSL_API const char* wolfSSL_get_cipher_name_by_hash(WOLFSSL* ssl, + const char* hash); +#endif #endif /* NO_PSK */ @@ -2014,9 +2325,11 @@ WOLFSSL_API long wolfSSL_CTX_set_options(WOLFSSL_CTX*, long); WOLFSSL_API long wolfSSL_CTX_get_options(WOLFSSL_CTX* ctx); WOLFSSL_API long wolfSSL_CTX_clear_options(WOLFSSL_CTX*, long); -#if !defined(NO_FILESYSTEM) && !defined(NO_CHECK_PRIVATE_KEY) +#if !defined(NO_CHECK_PRIVATE_KEY) WOLFSSL_API int wolfSSL_CTX_check_private_key(const WOLFSSL_CTX*); #endif +WOLFSSL_API WOLFSSL_EVP_PKEY* wolfSSL_CTX_get0_privatekey(const WOLFSSL_CTX*); + WOLFSSL_API void wolfSSL_ERR_free_strings(void); WOLFSSL_API void wolfSSL_ERR_remove_state(unsigned long); WOLFSSL_API int wolfSSL_clear(WOLFSSL* ssl); @@ -2033,8 +2346,8 @@ WOLFSSL_API int wolfSSL_CTX_set_default_verify_paths(WOLFSSL_CTX*); WOLFSSL_API int wolfSSL_CTX_set_session_id_context(WOLFSSL_CTX*, const unsigned char*, unsigned int); WOLFSSL_ABI WOLFSSL_API WOLFSSL_X509* wolfSSL_get_peer_certificate(WOLFSSL*); +#ifdef OPENSSL_EXTRA WOLFSSL_API WOLF_STACK_OF(WOLFSSL_X509)* wolfSSL_get_peer_cert_chain(const WOLFSSL*); -#if defined(WOLFSSL_QT) || defined(OPENSSL_ALL) WOLFSSL_API WOLF_STACK_OF(WOLFSSL_X509)* wolfSSL_set_peer_cert_chain(WOLFSSL* ssl); #endif @@ -2061,15 +2374,23 @@ WOLFSSL_API int wolfSSL_ASN1_TIME_diff(int *pday, int *psec, const WOLFSSL_ASN1_TIME *from, const WOLFSSL_ASN1_TIME *to); #ifdef OPENSSL_EXTRA WOLFSSL_API WOLFSSL_ASN1_TIME *wolfSSL_ASN1_TIME_set(WOLFSSL_ASN1_TIME *s, time_t t); +WOLFSSL_API int wolfSSL_ASN1_TIME_set_string(WOLFSSL_ASN1_TIME *s, const char *str); #endif -WOLFSSL_API int wolfSSL_sk_num(WOLFSSL_STACK* sk); -WOLFSSL_API void* wolfSSL_sk_value(WOLFSSL_STACK* sk, int i); +WOLFSSL_API int wolfSSL_sk_num(const WOLFSSL_STACK* sk); +WOLFSSL_API void* wolfSSL_sk_value(const WOLFSSL_STACK* sk, int i); + +#if defined(HAVE_EX_DATA) || defined(FORTRESS) || defined(WOLFSSL_WPAS_SMALL) -#if (defined(HAVE_EX_DATA) || defined(FORTRESS)) && \ - (defined(OPENSSL_EXTRA) || defined(WOLFSSL_WPAS_SMALL)) WOLFSSL_API void* wolfSSL_CRYPTO_get_ex_data(const WOLFSSL_CRYPTO_EX_DATA* ex_data, int idx); +#ifdef HAVE_EX_DATA_CLEANUP_HOOKS +WOLFSSL_API int wolfSSL_CRYPTO_set_ex_data_with_cleanup( + WOLFSSL_CRYPTO_EX_DATA* ex_data, + int idx, + void *data, + wolfSSL_ex_data_cleanup_routine_t cleanup_routine); +#endif WOLFSSL_API int wolfSSL_CRYPTO_set_ex_data(WOLFSSL_CRYPTO_EX_DATA* ex_data, int idx, void *data); #endif @@ -2077,8 +2398,15 @@ WOLFSSL_API int wolfSSL_CRYPTO_set_ex_data(WOLFSSL_CRYPTO_EX_DATA* ex_data, int /* stunnel 4.28 needs */ WOLFSSL_API void* wolfSSL_CTX_get_ex_data(const WOLFSSL_CTX*, int); WOLFSSL_API int wolfSSL_CTX_set_ex_data(WOLFSSL_CTX*, int, void*); +#ifdef HAVE_EX_DATA_CLEANUP_HOOKS +WOLFSSL_API int wolfSSL_CTX_set_ex_data_with_cleanup( + WOLFSSL_CTX* ctx, + int idx, + void* data, + wolfSSL_ex_data_cleanup_routine_t cleanup_routine); +#endif WOLFSSL_API void wolfSSL_CTX_sess_set_get_cb(WOLFSSL_CTX*, - WOLFSSL_SESSION*(*f)(WOLFSSL*, unsigned char*, int, int*)); + WOLFSSL_SESSION*(*f)(WOLFSSL*, const unsigned char*, int, int*)); WOLFSSL_API void wolfSSL_CTX_sess_set_new_cb(WOLFSSL_CTX*, int (*f)(WOLFSSL*, WOLFSSL_SESSION*)); WOLFSSL_API void wolfSSL_CTX_sess_set_remove_cb(WOLFSSL_CTX*, @@ -2109,7 +2437,11 @@ WOLFSSL_ABI WOLFSSL_API int wolfSSL_Cleanup(void); /* which library version do we have */ WOLFSSL_API const char* wolfSSL_lib_version(void); +#if defined(OPENSSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER >= 0x10100000L +WOLFSSL_API const char* wolfSSL_OpenSSL_version(int a); +#else WOLFSSL_API const char* wolfSSL_OpenSSL_version(void); +#endif /* which library version do we have in hex */ WOLFSSL_API word32 wolfSSL_lib_version_hex(void); @@ -2164,9 +2496,15 @@ WOLFSSL_API WOLFSSL_X509* wolfSSL_d2i_X509(WOLFSSL_X509** x509, const unsigned char** in, int len); WOLFSSL_API WOLFSSL_X509* wolfSSL_X509_d2i(WOLFSSL_X509** x509, const unsigned char* in, int len); +#ifdef WOLFSSL_CERT_REQ +WOLFSSL_API WOLFSSL_X509* + wolfSSL_X509_REQ_d2i(WOLFSSL_X509** x509, const unsigned char* in, int len); +#endif WOLFSSL_API int wolfSSL_i2d_X509(WOLFSSL_X509* x509, unsigned char** out); WOLFSSL_API WOLFSSL_X509_CRL *wolfSSL_d2i_X509_CRL(WOLFSSL_X509_CRL **crl, const unsigned char *in, int len); +WOLFSSL_API WOLFSSL_X509_CRL *wolfSSL_d2i_X509_CRL_bio(WOLFSSL_BIO *bp, + WOLFSSL_X509_CRL **crl); #if !defined(NO_FILESYSTEM) && !defined(NO_STDIO_FILESYSTEM) WOLFSSL_API WOLFSSL_X509_CRL *wolfSSL_d2i_X509_CRL_fp(XFILE file, WOLFSSL_X509_CRL **crl); #endif @@ -2182,6 +2520,10 @@ WOLFSSL_ABI WOLFSSL_API WOLFSSL_X509* #endif WOLFSSL_API WOLFSSL_X509* wolfSSL_X509_load_certificate_buffer( const unsigned char* buf, int sz, int format); +#ifdef WOLFSSL_CERT_REQ +WOLFSSL_API WOLFSSL_X509* wolfSSL_X509_REQ_load_certificate_buffer( + const unsigned char* buf, int sz, int format); +#endif #ifdef WOLFSSL_SEP WOLFSSL_API unsigned char* @@ -2209,6 +2551,8 @@ WOLFSSL_API WOLFSSL_X509_PKCS12* wolfSSL_d2i_PKCS12_fp(XFILE fp, WOLFSSL_API int wolfSSL_PKCS12_parse(WC_PKCS12* pkcs12, const char* psw, WOLFSSL_EVP_PKEY** pkey, WOLFSSL_X509** cert, WOLF_STACK_OF(WOLFSSL_X509)** ca); +WOLFSSL_API int wolfSSL_PKCS12_verify_mac(WC_PKCS12 *pkcs12, const char *psw, + int pswLen); WOLFSSL_API WC_PKCS12* wolfSSL_PKCS12_create(char* pass, char* name, WOLFSSL_EVP_PKEY* pkey, WOLFSSL_X509* cert, WOLF_STACK_OF(WOLFSSL_X509)* ca, @@ -2310,7 +2654,13 @@ WOLFSSL_API int wolfSSL_make_eap_keys(WOLFSSL*, void* key, unsigned int len, WOLFSSL_API int wolfSSL_CTX_use_PrivateKey_buffer(WOLFSSL_CTX*, const unsigned char*, long, int); WOLFSSL_API int wolfSSL_CTX_use_PrivateKey_id(WOLFSSL_CTX*, - const unsigned char*, long, int, long); + const unsigned char*, long, + int, long); + WOLFSSL_API int wolfSSL_CTX_use_PrivateKey_Id(WOLFSSL_CTX*, + const unsigned char*, long, + int); + WOLFSSL_API int wolfSSL_CTX_use_PrivateKey_Label(WOLFSSL_CTX*, const char*, + int); WOLFSSL_API int wolfSSL_CTX_use_certificate_chain_buffer_format(WOLFSSL_CTX*, const unsigned char*, long, int); WOLFSSL_API int wolfSSL_CTX_use_certificate_chain_buffer(WOLFSSL_CTX*, @@ -2324,7 +2674,10 @@ WOLFSSL_API int wolfSSL_make_eap_keys(WOLFSSL*, void* key, unsigned int len, WOLFSSL_API int wolfSSL_use_PrivateKey_buffer(WOLFSSL*, const unsigned char*, long, int); WOLFSSL_API int wolfSSL_use_PrivateKey_id(WOLFSSL*, const unsigned char*, - long, int, long); + long, int, long); + WOLFSSL_API int wolfSSL_use_PrivateKey_Id(WOLFSSL*, const unsigned char*, + long, int); + WOLFSSL_API int wolfSSL_use_PrivateKey_Label(WOLFSSL*, const char*, int); WOLFSSL_API int wolfSSL_use_certificate_chain_buffer_format(WOLFSSL*, const unsigned char*, long, int); WOLFSSL_API int wolfSSL_use_certificate_chain_buffer(WOLFSSL*, @@ -2334,6 +2687,7 @@ WOLFSSL_API int wolfSSL_make_eap_keys(WOLFSSL*, void* key, unsigned int len, #if (defined(OPENSSL_EXTRA) || defined(OPENSSL_EXTRA_X509_SMALL)) && \ defined(KEEP_OUR_CERT) WOLFSSL_API WOLFSSL_X509* wolfSSL_get_certificate(WOLFSSL* ssl); + WOLFSSL_API WOLFSSL_X509* wolfSSL_CTX_get0_certificate(WOLFSSL_CTX* ctx); #endif #endif @@ -2392,7 +2746,7 @@ WOLFSSL_API int wolfSSL_CTX_GetObjectSize(void); WOLFSSL_API int wolfSSL_METHOD_GetObjectSize(void); WOLFSSL_API int wolfSSL_GetOutputSize(WOLFSSL*, int); WOLFSSL_API int wolfSSL_GetMaxOutputSize(WOLFSSL*); -WOLFSSL_API int wolfSSL_GetVersion(WOLFSSL* ssl); +WOLFSSL_API int wolfSSL_GetVersion(const WOLFSSL* ssl); WOLFSSL_API int wolfSSL_SetVersion(WOLFSSL* ssl, int version); /* moved to asn.c, old names kept for backwards compatibility */ @@ -2722,6 +3076,7 @@ WOLFSSL_API void* wolfSSL_GetRsaDecCtx(WOLFSSL* ssl); WOLFSSL_API WOLFSSL_CERT_MANAGER* wolfSSL_CertManagerNew_ex(void* heap); WOLFSSL_API WOLFSSL_CERT_MANAGER* wolfSSL_CertManagerNew(void); WOLFSSL_API void wolfSSL_CertManagerFree(WOLFSSL_CERT_MANAGER*); + WOLFSSL_API int wolfSSL_CertManager_up_ref(WOLFSSL_CERT_MANAGER*); WOLFSSL_API int wolfSSL_CertManagerLoadCA(WOLFSSL_CERT_MANAGER*, const char* f, const char* d); @@ -2772,9 +3127,16 @@ WOLFSSL_API void* wolfSSL_GetRsaDecCtx(WOLFSSL* ssl); WOLFSSL_CERT_MANAGER* cm); WOLFSSL_API int wolfSSL_CertManagerDisableOCSPStapling( WOLFSSL_CERT_MANAGER* cm); -#if defined(OPENSSL_EXTRA) && defined(WOLFSSL_SIGNER_DER_CERT) && !defined(NO_FILESYSTEM) + WOLFSSL_API int wolfSSL_CertManagerEnableOCSPMustStaple( + WOLFSSL_CERT_MANAGER* cm); + WOLFSSL_API int wolfSSL_CertManagerDisableOCSPMustStaple( + WOLFSSL_CERT_MANAGER* cm); +#if defined(OPENSSL_EXTRA) && defined(WOLFSSL_SIGNER_DER_CERT) && \ + !defined(NO_FILESYSTEM) WOLFSSL_API WOLFSSL_STACK* wolfSSL_CertManagerGetCerts(WOLFSSL_CERT_MANAGER* cm); -#endif +WOLFSSL_API WOLF_STACK_OF(WOLFSSL_X509)* wolfSSL_X509_STORE_get1_certs( + WOLFSSL_X509_STORE_CTX*, WOLFSSL_X509_NAME*); +#endif /* OPENSSL_EXTRA && WOLFSSL_SIGNER_DER_CERT && !NO_FILESYSTEM */ WOLFSSL_API int wolfSSL_EnableCRL(WOLFSSL* ssl, int options); WOLFSSL_API int wolfSSL_DisableCRL(WOLFSSL* ssl); WOLFSSL_API int wolfSSL_LoadCRL(WOLFSSL*, const char*, int, int); @@ -2808,6 +3170,8 @@ WOLFSSL_API WOLFSSL_STACK* wolfSSL_CertManagerGetCerts(WOLFSSL_CERT_MANAGER* cm) CbOCSPIO, CbOCSPRespFree, void*); WOLFSSL_API int wolfSSL_CTX_EnableOCSPStapling(WOLFSSL_CTX*); WOLFSSL_API int wolfSSL_CTX_DisableOCSPStapling(WOLFSSL_CTX*); + WOLFSSL_API int wolfSSL_CTX_EnableOCSPMustStaple(WOLFSSL_CTX*); + WOLFSSL_API int wolfSSL_CTX_DisableOCSPMustStaple(WOLFSSL_CTX*); #endif /* !NO_CERTS */ @@ -2923,7 +3287,7 @@ enum { WOLFSSL_MAX_ALPN_NUMBER = 257 }; -#if defined(OPENSSL_ALL) || defined(WOLFSSL_NGINX) || defined(WOLFSSL_HAPROXY) +#if defined(OPENSSL_ALL) || defined(WOLFSSL_NGINX) || defined(WOLFSSL_HAPROXY) || defined(HAVE_LIGHTY) typedef int (*CallbackALPNSelect)(WOLFSSL* ssl, const unsigned char** out, unsigned char* outLen, const unsigned char* in, unsigned int inLen, void *arg); @@ -3074,13 +3438,9 @@ enum { }; #ifdef HAVE_SUPPORTED_CURVES -#ifndef NO_WOLFSSL_CLIENT - WOLFSSL_API int wolfSSL_UseSupportedCurve(WOLFSSL* ssl, word16 name); WOLFSSL_API int wolfSSL_CTX_UseSupportedCurve(WOLFSSL_CTX* ctx, word16 name); - -#endif #endif #ifdef WOLFSSL_TLS13 @@ -3094,16 +3454,46 @@ WOLFSSL_API int wolfSSL_NoKeyShares(WOLFSSL* ssl); WOLFSSL_API int wolfSSL_UseSecureRenegotiation(WOLFSSL* ssl); WOLFSSL_API int wolfSSL_CTX_UseSecureRenegotiation(WOLFSSL_CTX* ctx); -WOLFSSL_API int wolfSSL_StartSecureRenegotiation(WOLFSSL* ssl, int resume); WOLFSSL_API int wolfSSL_Rehandshake(WOLFSSL* ssl); WOLFSSL_API int wolfSSL_SecureResume(WOLFSSL* ssl); WOLFSSL_API long wolfSSL_SSL_get_secure_renegotiation_support(WOLFSSL* ssl); #endif +#if defined(HAVE_SELFTEST) && \ + (!defined(HAVE_SELFTEST_VERSION) || (HAVE_SELFTEST_VERSION < 2)) + + /* Needed by session ticket stuff below */ + #ifndef WOLFSSL_AES_KEY_SIZE_ENUM + #define WOLFSSL_AES_KEY_SIZE_ENUM + enum SSL_Misc { + AES_IV_SIZE = 16, + AES_128_KEY_SIZE = 16, + AES_192_KEY_SIZE = 24, + AES_256_KEY_SIZE = 32 + }; + #endif +#endif + /* Session Ticket */ #ifdef HAVE_SESSION_TICKET +#if !defined(WOLFSSL_NO_DEF_TICKET_ENC_CB) && !defined(WOLFSSL_NO_SERVER) + #if defined(HAVE_CHACHA) && defined(HAVE_POLY1305) && \ + !defined(WOLFSSL_TICKET_ENC_AES128_GCM) && \ + !defined(WOLFSSL_TICKET_ENC_AES256_GCM) + #define WOLFSSL_TICKET_KEY_SZ CHACHA20_POLY1305_AEAD_KEYSIZE + #elif defined(WOLFSSL_TICKET_ENC_AES256_GCM) + #define WOLFSSL_TICKET_KEY_SZ AES_256_KEY_SIZE + #else + #define WOLFSSL_TICKET_KEY_SZ AES_128_KEY_SIZE + #endif + + #define WOLFSSL_TICKET_KEYS_SZ (WOLFSSL_TICKET_NAME_SZ + \ + 2 * WOLFSSL_TICKET_KEY_SZ + \ + sizeof(word32) * 2) +#endif + #ifndef NO_WOLFSSL_CLIENT WOLFSSL_API int wolfSSL_UseSessionTicket(WOLFSSL* ssl); WOLFSSL_API int wolfSSL_CTX_UseSessionTicket(WOLFSSL_CTX* ctx); @@ -3128,6 +3518,9 @@ enum TicketEncRet { #ifndef NO_WOLFSSL_SERVER +WOLFSSL_API int wolfSSL_CTX_NoTicketTLSv12(WOLFSSL_CTX* ctx); +WOLFSSL_API int wolfSSL_NoTicketTLSv12(WOLFSSL* ssl); + typedef int (*SessionTicketEncCb)(WOLFSSL*, unsigned char key_name[WOLFSSL_TICKET_NAME_SZ], unsigned char iv[WOLFSSL_TICKET_IV_SZ], @@ -3137,6 +3530,7 @@ WOLFSSL_API int wolfSSL_CTX_set_TicketEncCb(WOLFSSL_CTX* ctx, SessionTicketEncCb); WOLFSSL_API int wolfSSL_CTX_set_TicketHint(WOLFSSL_CTX* ctx, int); WOLFSSL_API int wolfSSL_CTX_set_TicketEncCtx(WOLFSSL_CTX* ctx, void*); +WOLFSSL_API void* wolfSSL_CTX_get_TicketEncCtx(WOLFSSL_CTX* ctx); #endif /* NO_WOLFSSL_SERVER */ @@ -3231,9 +3625,9 @@ WOLFSSL_API int wolfSSL_accept_ex(WOLFSSL*, HandShakeCallBack, TimeoutCallBack, /* Smaller subset of X509 compatibility functions. Avoid increasing the size of * this subset and its memory usage */ -#include +#include struct WOLFSSL_X509_NAME_ENTRY { - WOLFSSL_ASN1_OBJECT object; /* static object just for keeping grp, type */ + WOLFSSL_ASN1_OBJECT* object; /* static object just for keeping grp, type */ WOLFSSL_ASN1_STRING* value; /* points to data, for lighttpd port */ int nid; /* i.e. ASN_COMMON_NAME */ int set; @@ -3290,7 +3684,6 @@ WOLFSSL_LOCAL int NIDToEccEnum(int n); /* end of object functions */ WOLFSSL_API unsigned long wolfSSL_ERR_peek_last_error_line(const char **file, int *line); -WOLFSSL_API long wolfSSL_ctrl(WOLFSSL* ssl, int cmd, long opt, void* pt); WOLFSSL_API long wolfSSL_CTX_ctrl(WOLFSSL_CTX* ctx, int cmd, long opt,void* pt); WOLFSSL_API long wolfSSL_CTX_callback_ctrl(WOLFSSL_CTX* ctx, int cmd, void (*fp)(void)); WOLFSSL_API long wolfSSL_CTX_clear_extra_chain_certs(WOLFSSL_CTX* ctx); @@ -3310,6 +3703,8 @@ WOLFSSL_API int wolfSSL_X509_NAME_add_entry_by_txt(WOLFSSL_X509_NAME *name, WOLFSSL_API int wolfSSL_X509_NAME_add_entry_by_NID(WOLFSSL_X509_NAME *name, int nid, int type, const unsigned char *bytes, int len, int loc, int set); +WOLFSSL_API WOLFSSL_X509_NAME_ENTRY *wolfSSL_X509_NAME_delete_entry( + WOLFSSL_X509_NAME *name, int loc); WOLFSSL_API int wolfSSL_X509_NAME_cmp(const WOLFSSL_X509_NAME* x, const WOLFSSL_X509_NAME* y); WOLFSSL_API WOLFSSL_X509_NAME* wolfSSL_X509_NAME_new(void); @@ -3320,9 +3715,9 @@ WOLFSSL_API int wolfSSL_check_private_key(const WOLFSSL* ssl); #endif /* !NO_CERTS */ #endif /* OPENSSL_ALL || OPENSSL_EXTRA || OPENSSL_EXTRA_X509_SMALL */ -#ifdef WOLFSSL_WPAS_SMALL - /* WPA Supplicant requires GEN_ values */ - #include +#if defined(OPENSSL_ALL) || defined(WOLFSSL_ASIO) || defined(WOLFSSL_HAPROXY) \ + || defined(WOLFSSL_NGINX) || defined(WOLFSSL_QT) +WOLFSSL_API long wolfSSL_ctrl(WOLFSSL* ssl, int cmd, long opt, void* pt); #endif #if defined(OPENSSL_EXTRA) || defined(WOLFSSL_WPAS_SMALL) @@ -3337,6 +3732,7 @@ WOLFSSL_API int wolfSSL_X509_get_ext_by_NID(const WOLFSSL_X509 *x, int nid, int WOLFSSL_API int wolfSSL_X509_add_ext(WOLFSSL_X509 *x, WOLFSSL_X509_EXTENSION *ex, int loc); WOLFSSL_API WOLFSSL_X509_EXTENSION *wolfSSL_X509V3_EXT_i2d(int nid, int crit, void *data); +WOLFSSL_API WOLFSSL_X509_EXTENSION *wolfSSL_X509_delete_ext(WOLFSSL_X509 *x509, int loc); WOLFSSL_API WOLFSSL_X509_EXTENSION* wolfSSL_X509V3_EXT_conf_nid( WOLF_LHASH_OF(CONF_VALUE)* conf, WOLFSSL_X509V3_CTX* ctx, int nid, char* value); @@ -3346,6 +3742,8 @@ WOLFSSL_API void wolfSSL_X509V3_set_ctx(WOLFSSL_X509V3_CTX* ctx, WOLFSSL_API void wolfSSL_X509V3_set_ctx_nodb(WOLFSSL_X509V3_CTX* ctx); WOLFSSL_API int wolfSSL_X509_digest(const WOLFSSL_X509* x509, const WOLFSSL_EVP_MD* digest, unsigned char* buf, unsigned int* len); +WOLFSSL_API int wolfSSL_X509_pubkey_digest(const WOLFSSL_X509 *x509, + const WOLFSSL_EVP_MD *digest, unsigned char* buf, unsigned int* len); WOLFSSL_API int wolfSSL_use_certificate(WOLFSSL* ssl, WOLFSSL_X509* x509); WOLFSSL_API int wolfSSL_use_PrivateKey(WOLFSSL* ssl, WOLFSSL_EVP_PKEY* pkey); WOLFSSL_API int wolfSSL_use_PrivateKey_ASN1(int pri, WOLFSSL* ssl, @@ -3360,7 +3758,11 @@ WOLFSSL_API int wolfSSL_CTX_use_PrivateKey_ASN1(int pri, WOLFSSL_CTX* ctx, #if defined(WOLFSSL_QT) || defined(OPENSSL_ALL) WOLFSSL_API int wolfSSL_X509_cmp(const WOLFSSL_X509* a, const WOLFSSL_X509* b); +WOLFSSL_API const WOLFSSL_STACK *wolfSSL_X509_get0_extensions(const WOLFSSL_X509 *x); +WOLFSSL_API const WOLFSSL_STACK *wolfSSL_X509_REQ_get_extensions(const WOLFSSL_X509 *x); WOLFSSL_API WOLFSSL_X509_EXTENSION* wolfSSL_X509_get_ext(const WOLFSSL_X509* x, int loc); +WOLFSSL_API int wolfSSL_X509_get_ext_by_OBJ(const WOLFSSL_X509 *x, + const WOLFSSL_ASN1_OBJECT *obj, int lastpos); WOLFSSL_API WOLFSSL_X509_EXTENSION* wolfSSL_X509_set_ext(WOLFSSL_X509* x, int loc); WOLFSSL_API int wolfSSL_X509_EXTENSION_get_critical(const WOLFSSL_X509_EXTENSION* ex); WOLFSSL_API WOLFSSL_X509_EXTENSION* wolfSSL_X509_EXTENSION_new(void); @@ -3382,6 +3784,9 @@ WOLFSSL_API int wolfSSL_SESSION_get_master_key(const WOLFSSL_SESSION* ses, WOLFSSL_API int wolfSSL_SESSION_get_master_key_length(const WOLFSSL_SESSION* ses); WOLFSSL_API int wolfSSL_i2d_X509_bio(WOLFSSL_BIO* bio, WOLFSSL_X509* x509); +#ifdef WOLFSSL_CERT_REQ +WOLFSSL_API int wolfSSL_i2d_X509_REQ_bio(WOLFSSL_BIO* bio, WOLFSSL_X509* x509); +#endif #if !defined(NO_FILESYSTEM) WOLFSSL_API WOLFSSL_X509* wolfSSL_d2i_X509_fp(XFILE fp, WOLFSSL_X509** x509); @@ -3389,29 +3794,44 @@ WOLFSSL_API WOLFSSL_STACK* wolfSSL_X509_STORE_GetCerts(WOLFSSL_X509_STORE_CTX* s #endif WOLFSSL_API WOLFSSL_X509* wolfSSL_d2i_X509_bio(WOLFSSL_BIO* bio, WOLFSSL_X509** x509); +#ifdef WOLFSSL_CERT_REQ +WOLFSSL_API WOLFSSL_X509* wolfSSL_d2i_X509_REQ_bio(WOLFSSL_BIO* bio, + WOLFSSL_X509** x509); +#endif #endif /* OPENSSL_EXTRA || OPENSSL_ALL */ #if defined(OPENSSL_EXTRA) || defined(WOLFSSL_WPAS_SMALL) WOLFSSL_API void wolfSSL_CTX_set_cert_store(WOLFSSL_CTX* ctx, WOLFSSL_X509_STORE* str); WOLFSSL_API WOLFSSL_X509_STORE* wolfSSL_CTX_get_cert_store(WOLFSSL_CTX* ctx); +#endif /* OPENSSL_EXTRA || WOLFSSL_WPAS_SMALL */ +#if defined(OPENSSL_EXTRA) || defined(WOLFSSL_WPAS_SMALL) || \ + defined(HAVE_SECRET_CALLBACK) WOLFSSL_API size_t wolfSSL_get_server_random(const WOLFSSL *ssl, unsigned char *out, size_t outlen); WOLFSSL_API size_t wolfSSL_get_client_random(const WOLFSSL* ssl, unsigned char* out, size_t outSz); -#endif /* OPENSSL_EXTRA || WOLFSSL_WPAS_SMALL */ +#endif /* OPENSSL_EXTRA || WOLFSSL_WPAS_SMALL || HAVE_SECRET_CALLBACK */ #if defined(OPENSSL_EXTRA) || defined(OPENSSL_ALL) WOLFSSL_API size_t wolfSSL_BIO_wpending(const WOLFSSL_BIO *bio); +/* non-standard API to determine if BIO supports "pending" */ +WOLFSSL_API int wolfSSL_BIO_supports_pending(const WOLFSSL_BIO *bio); WOLFSSL_API size_t wolfSSL_BIO_ctrl_pending(WOLFSSL_BIO *b); WOLFSSL_API int wolfSSL_get_server_tmp_key(const WOLFSSL*, WOLFSSL_EVP_PKEY**); WOLFSSL_API int wolfSSL_CTX_set_min_proto_version(WOLFSSL_CTX*, int); WOLFSSL_API int wolfSSL_CTX_set_max_proto_version(WOLFSSL_CTX*, int); +WOLFSSL_API int wolfSSL_set_min_proto_version(WOLFSSL*, int); +WOLFSSL_API int wolfSSL_set_max_proto_version(WOLFSSL*, int); +WOLFSSL_API int wolfSSL_CTX_get_min_proto_version(WOLFSSL_CTX*); WOLFSSL_API int wolfSSL_CTX_use_PrivateKey(WOLFSSL_CTX *ctx, WOLFSSL_EVP_PKEY *pkey); WOLFSSL_API WOLFSSL_X509 *wolfSSL_PEM_read_bio_X509(WOLFSSL_BIO *bp, WOLFSSL_X509 **x, pem_password_cb *cb, void *u); +#ifdef WOLFSSL_CERT_REQ +WOLFSSL_API WOLFSSL_X509 *wolfSSL_PEM_read_bio_X509_REQ(WOLFSSL_BIO *bp, WOLFSSL_X509 **x, pem_password_cb *cb, void *u); +#endif WOLFSSL_API WOLFSSL_X509_CRL *wolfSSL_PEM_read_bio_X509_CRL(WOLFSSL_BIO *bp, WOLFSSL_X509_CRL **x, pem_password_cb *cb, void *u); WOLFSSL_API WOLFSSL_X509 *wolfSSL_PEM_read_bio_X509_AUX @@ -3423,7 +3843,7 @@ WOLFSSL_API WOLF_STACK_OF(WOLFSSL_X509_INFO)* wolfSSL_PEM_X509_INFO_read_bio( WOLFSSL_API WOLFSSL_X509_CRL *wolfSSL_PEM_read_X509_CRL(XFILE fp, WOLFSSL_X509_CRL **x, pem_password_cb *cb, void *u); #endif -WOLFSSL_API int wolfSSL_PEM_get_EVP_CIPHER_INFO(char* header, +WOLFSSL_API int wolfSSL_PEM_get_EVP_CIPHER_INFO(const char* header, EncryptedInfo* cipher); WOLFSSL_API int wolfSSL_PEM_do_header(EncryptedInfo* cipher, unsigned char* data, long* len, @@ -3441,6 +3861,12 @@ struct WOLFSSL_ASN1_BIT_STRING { long flags; }; +struct WOLFSSL_CONF_CTX { + unsigned int flags; + WOLFSSL_CTX* ctx; + WOLFSSL* ssl; +}; + WOLFSSL_API WOLFSSL_X509_NAME_ENTRY *wolfSSL_X509_NAME_get_entry(WOLFSSL_X509_NAME *name, int loc); #endif /* OPENSSL_EXTRA || WOLFSSL_WPAS_SMALL */ @@ -3467,6 +3893,7 @@ WOLFSSL_API void* wolfSSL_get_app_data( const WOLFSSL *ssl); WOLFSSL_API int wolfSSL_set_app_data(WOLFSSL *ssl, void *arg); WOLFSSL_API WOLFSSL_ASN1_OBJECT * wolfSSL_X509_NAME_ENTRY_get_object(WOLFSSL_X509_NAME_ENTRY *ne); WOLFSSL_API unsigned char *wolfSSL_SHA1(const unsigned char *d, size_t n, unsigned char *md); +WOLFSSL_API unsigned char *wolfSSL_SHA224(const unsigned char *d, size_t n, unsigned char *md); WOLFSSL_API unsigned char *wolfSSL_SHA256(const unsigned char *d, size_t n, unsigned char *md); WOLFSSL_API unsigned char *wolfSSL_SHA384(const unsigned char *d, size_t n, unsigned char *md); WOLFSSL_API unsigned char *wolfSSL_SHA512(const unsigned char *d, size_t n, unsigned char *md); @@ -3477,13 +3904,22 @@ WOLFSSL_API int wolfSSL_X509_check_ca(WOLFSSL_X509 *x509); #ifndef NO_FILESYSTEM WOLFSSL_API long wolfSSL_BIO_set_fp(WOLFSSL_BIO *bio, XFILE fp, int c); WOLFSSL_API long wolfSSL_BIO_get_fp(WOLFSSL_BIO *bio, XFILE* fp); -WOLFSSL_API WOLFSSL_BIO* wolfSSL_BIO_new_fp(XFILE fp, int c); #endif #endif /* OPENSSL_EXTRA || OPENSSL_ALL || HAVE_LIGHTY || WOLFSSL_MYSQL_COMPATIBLE || HAVE_STUNNEL || WOLFSSL_NGINX || WOLFSSL_HAPROXY */ #endif /* OPENSSL_EXTRA || OPENSSL_ALL */ +#if defined(HAVE_LIGHTY) || defined(HAVE_STUNNEL) \ + || defined(WOLFSSL_MYSQL_COMPATIBLE) || defined(OPENSSL_EXTRA) +#ifndef NO_BIO +WOLFSSL_API WOLFSSL_BIO* wolfSSL_BIO_new_file(const char *filename, + const char *mode); +#ifndef NO_FILESYSTEM +WOLFSSL_API WOLFSSL_BIO* wolfSSL_BIO_new_fp(XFILE fp, int c); +#endif /* !NO_FILESYSTEM */ +#endif /* !NO_BIO */ +#endif #if defined(OPENSSL_ALL) \ || defined(HAVE_STUNNEL) \ @@ -3491,8 +3927,8 @@ WOLFSSL_API WOLFSSL_BIO* wolfSSL_BIO_new_fp(XFILE fp, int c); || defined(WOLFSSL_MYSQL_COMPATIBLE) \ || defined(WOLFSSL_HAPROXY) \ || defined(OPENSSL_EXTRA) +#define X509_BUFFER_SZ 8192 -WOLFSSL_API WOLFSSL_BIO* wolfSSL_BIO_new_file(const char *filename, const char *mode); WOLFSSL_API long wolfSSL_CTX_set_tmp_dh(WOLFSSL_CTX*, WOLFSSL_DH*); WOLFSSL_API WOLFSSL_DH *wolfSSL_PEM_read_bio_DHparams(WOLFSSL_BIO *bp, WOLFSSL_DH **x, pem_password_cb *cb, void *u); @@ -3510,23 +3946,43 @@ WOLFSSL_API WOLFSSL_X509* wolfSSL_X509_REQ_new(void); WOLFSSL_API void wolfSSL_X509_REQ_free(WOLFSSL_X509* req); WOLFSSL_API int wolfSSL_X509_REQ_sign(WOLFSSL_X509 *req, WOLFSSL_EVP_PKEY *pkey, const WOLFSSL_EVP_MD *md); +WOLFSSL_API int wolfSSL_X509_REQ_sign_ctx(WOLFSSL_X509 *req, + WOLFSSL_EVP_MD_CTX* md_ctx); WOLFSSL_API int wolfSSL_X509_REQ_add_extensions(WOLFSSL_X509* req, - WOLF_STACK_OF(WOLFSSL_X509_EXTENSION)* ext); + WOLF_STACK_OF(WOLFSSL_X509_EXTENSION)* ext_sk); WOLFSSL_API int wolfSSL_X509_REQ_set_subject_name(WOLFSSL_X509 *req, WOLFSSL_X509_NAME *name); WOLFSSL_API int wolfSSL_X509_REQ_set_pubkey(WOLFSSL_X509 *req, WOLFSSL_EVP_PKEY *pkey); +WOLFSSL_API int wolfSSL_X509_REQ_add1_attr_by_NID(WOLFSSL_X509 *req, + int nid, int type, + const unsigned char *bytes, + int len); +WOLFSSL_API int wolfSSL_X509_REQ_get_attr_by_NID(const WOLFSSL_X509 *req, + int nid, int lastpos); +WOLFSSL_API int wolfSSL_X509_REQ_add1_attr_by_txt(WOLFSSL_X509 *req, + const char *attrname, int type, + const unsigned char *bytes, int len); +WOLFSSL_API WOLFSSL_X509_ATTRIBUTE *wolfSSL_X509_REQ_get_attr( + const WOLFSSL_X509 *req, int loc); +WOLFSSL_API WOLFSSL_X509_ATTRIBUTE* wolfSSL_X509_ATTRIBUTE_new(void); +WOLFSSL_API void wolfSSL_X509_ATTRIBUTE_free(WOLFSSL_X509_ATTRIBUTE* attr); +WOLFSSL_API WOLFSSL_ASN1_TYPE *wolfSSL_X509_ATTRIBUTE_get0_type( + WOLFSSL_X509_ATTRIBUTE *attr, int idx); +WOLFSSL_API WOLFSSL_X509 *wolfSSL_X509_to_X509_REQ(WOLFSSL_X509 *x, + WOLFSSL_EVP_PKEY *pkey, const WOLFSSL_EVP_MD *md); #endif #if defined(OPENSSL_ALL) || defined(HAVE_STUNNEL) || defined(WOLFSSL_NGINX) \ || defined(WOLFSSL_HAPROXY) || defined(OPENSSL_EXTRA) || defined(HAVE_LIGHTY) -#include - -/* SNI received callback type */ -typedef int (*CallbackSniRecv)(WOLFSSL *ssl, int *ret, void* exArg); +#include +WOLFSSL_API int wolfSSL_CRYPTO_set_mem_functions( + wolfSSL_Malloc_cb m, + wolfSSL_Realloc_cb r, + wolfSSL_Free_cb f); WOLFSSL_API int wolfSSL_CRYPTO_set_mem_ex_functions(void *(*m) (size_t, const char *, int), void *(*r) (void *, size_t, const char *, int), void (*f) (void *)); @@ -3557,13 +4013,17 @@ WOLFSSL_API int wolfSSL_FIPS_mode(void); WOLFSSL_API int wolfSSL_FIPS_mode_set(int r); -WOLFSSL_API int wolfSSL_RAND_set_rand_method(const void *meth); +WOLFSSL_API int wolfSSL_RAND_set_rand_method(const WOLFSSL_RAND_METHOD *methods); WOLFSSL_API int wolfSSL_CIPHER_get_bits(const WOLFSSL_CIPHER *c, int *alg_bits); WOLFSSL_API WOLFSSL_STACK* wolfSSL_sk_X509_new(void); WOLFSSL_API int wolfSSL_sk_X509_num(const WOLF_STACK_OF(WOLFSSL_X509) *s); +WOLFSSL_API WOLFSSL_STACK* wolfSSL_sk_X509_OBJECT_new(void); +WOLFSSL_API void wolfSSL_sk_X509_OBJECT_free(WOLFSSL_STACK* s); +WOLFSSL_API int wolfSSL_sk_X509_OBJECT_push(WOLFSSL_STACK* sk, WOLFSSL_X509_OBJECT* obj); + WOLFSSL_API WOLFSSL_X509_INFO *wolfSSL_X509_INFO_new(void); WOLFSSL_API void wolfSSL_X509_INFO_free(WOLFSSL_X509_INFO* info); @@ -3578,8 +4038,9 @@ WOLFSSL_API void wolfSSL_sk_X509_INFO_pop_free(WOLF_STACK_OF(WOLFSSL_X509_INFO)* void (*f) (WOLFSSL_X509_INFO*)); WOLFSSL_API void wolfSSL_sk_X509_INFO_free(WOLF_STACK_OF(WOLFSSL_X509_INFO)*); -typedef int (*wolf_sk_compare_cb)(const void* const *a, - const void* const *b); +typedef int (*wolf_sk_compare_cb)(const void* a, + const void* b); +typedef unsigned long (*wolf_sk_hash_cb) (const void *v); WOLFSSL_API WOLF_STACK_OF(WOLFSSL_X509_NAME)* wolfSSL_sk_X509_NAME_new( wolf_sk_compare_cb); WOLFSSL_API int wolfSSL_sk_X509_NAME_push(WOLF_STACK_OF(WOLFSSL_X509_NAME)*, @@ -3599,6 +4060,18 @@ WOLFSSL_API int wolfSSL_sk_X509_OBJECT_num(const WOLF_STACK_OF(WOLFSSL_X509_OBJE WOLFSSL_API int wolfSSL_X509_NAME_print_ex(WOLFSSL_BIO*,WOLFSSL_X509_NAME*,int, unsigned long); +#ifndef NO_FILESYSTEM +WOLFSSL_API int wolfSSL_X509_NAME_print_ex_fp(XFILE,WOLFSSL_X509_NAME*,int, + unsigned long); +#endif + +WOLFSSL_API WOLFSSL_STACK *wolfSSL_sk_CONF_VALUE_new(wolf_sk_compare_cb compFunc); +WOLFSSL_API void wolfSSL_sk_CONF_VALUE_free(struct WOLFSSL_STACK *sk); +WOLFSSL_API int wolfSSL_sk_CONF_VALUE_num(const WOLFSSL_STACK *sk); +WOLFSSL_API WOLFSSL_CONF_VALUE *wolfSSL_sk_CONF_VALUE_value( + const struct WOLFSSL_STACK *sk, int i); +WOLFSSL_API int wolfSSL_sk_CONF_VALUE_push(WOLF_STACK_OF(WOLFSSL_CONF_VALUE)* sk, + WOLFSSL_CONF_VALUE* val); #endif /* OPENSSL_ALL || HAVE_STUNNEL || WOLFSSL_NGINX || WOLFSSL_HAPROXY || OPENSSL_EXTRA || HAVE_LIGHTY */ #if defined(OPENSSL_EXTRA) || defined(WOLFSSL_WPAS_SMALL) @@ -3632,6 +4105,13 @@ WOLFSSL_API void* wolfSSL_sk_X509_OBJECT_value(WOLF_STACK_OF(WOLFSSL_X509_OBJECT WOLFSSL_API void* wolfSSL_SESSION_get_ex_data(const WOLFSSL_SESSION*, int); WOLFSSL_API int wolfSSL_SESSION_set_ex_data(WOLFSSL_SESSION*, int, void*); +#ifdef HAVE_EX_DATA_CLEANUP_HOOKS +WOLFSSL_API int wolfSSL_SESSION_set_ex_data_with_cleanup( + WOLFSSL_SESSION* session, + int idx, + void* data, + wolfSSL_ex_data_cleanup_routine_t cleanup_routine); +#endif #endif /* OPENSSL_EXTRA || WOLFSSL_WPAS_SMALL */ #if defined(OPENSSL_ALL) || defined(HAVE_STUNNEL) || defined(WOLFSSL_NGINX) \ @@ -3657,12 +4137,22 @@ WOLFSSL_API VerifyCallback wolfSSL_CTX_get_verify_callback(WOLFSSL_CTX*); WOLFSSL_API VerifyCallback wolfSSL_get_verify_callback(WOLFSSL*); +#endif /* OPENSSL_ALL || HAVE_STUNNEL || WOLFSSL_NGINX || WOLFSSL_HAPROXY || HAVE_LIGHTY */ + +#ifdef HAVE_SNI +/* SNI received callback type */ +typedef int (*CallbackSniRecv)(WOLFSSL *ssl, int *ret, void* exArg); + WOLFSSL_API void wolfSSL_CTX_set_servername_callback(WOLFSSL_CTX *, CallbackSniRecv); WOLFSSL_API int wolfSSL_CTX_set_tlsext_servername_callback(WOLFSSL_CTX *, CallbackSniRecv); WOLFSSL_API int wolfSSL_CTX_set_servername_arg(WOLFSSL_CTX *, void*); +#endif + +#if defined(OPENSSL_ALL) || defined(HAVE_STUNNEL) || defined(WOLFSSL_NGINX) \ + || defined(WOLFSSL_HAPROXY) || defined(OPENSSL_EXTRA) || defined(HAVE_LIGHTY) WOLFSSL_API void wolfSSL_ERR_remove_thread_state(void*); @@ -3676,18 +4166,24 @@ WOLFSSL_API void wolfSSL_print_all_errors_fp(XFILE fp); WOLFSSL_API void wolfSSL_THREADID_set_callback(void (*threadid_func)(void*)); WOLFSSL_API void wolfSSL_THREADID_set_numeric(void* id, unsigned long val); +WOLFSSL_API void wolfSSL_THREADID_current(WOLFSSL_CRYPTO_THREADID* id); +WOLFSSL_API unsigned long wolfSSL_THREADID_hash( + const WOLFSSL_CRYPTO_THREADID* id); -WOLFSSL_API WOLF_STACK_OF(WOLFSSL_X509)* wolfSSL_X509_STORE_get1_certs( - WOLFSSL_X509_STORE_CTX*, WOLFSSL_X509_NAME*); +WOLFSSL_API WOLFSSL_X509_LOOKUP_TYPE wolfSSL_X509_OBJECT_get_type( + const WOLFSSL_X509_OBJECT*); WOLFSSL_API WOLF_STACK_OF(WOLFSSL_X509_OBJECT)* wolfSSL_X509_STORE_get0_objects(WOLFSSL_X509_STORE *); WOLFSSL_API WOLFSSL_X509_OBJECT* wolfSSL_sk_X509_OBJECT_delete(WOLF_STACK_OF(WOLFSSL_X509_OBJECT)* sk, int i); -WOLFSSL_API void wolfSSL_X509_OBJECT_free(WOLFSSL_X509_OBJECT *a); +WOLFSSL_API WOLFSSL_X509_OBJECT* wolfSSL_X509_OBJECT_new(void); +WOLFSSL_API void wolfSSL_X509_OBJECT_free(WOLFSSL_X509_OBJECT *obj); +WOLFSSL_API WOLFSSL_X509 *wolfSSL_X509_OBJECT_get0_X509(const WOLFSSL_X509_OBJECT *obj); +WOLFSSL_API WOLFSSL_X509_CRL *wolfSSL_X509_OBJECT_get0_X509_CRL(WOLFSSL_X509_OBJECT *obj); #endif /* OPENSSL_ALL || HAVE_STUNNEL || WOLFSSL_NGINX || WOLFSSL_HAPROXY || HAVE_LIGHTY */ #if defined(OPENSSL_EXTRA) || defined(WOLFSSL_WPAS_SMALL) -#include +#include WOLFSSL_API void wolfSSL_sk_X509_pop_free(WOLF_STACK_OF(WOLFSSL_X509)* sk, void (*f) (WOLFSSL_X509*)); #endif /* OPENSSL_EXTRA || WOLFSSL_WPAS_SMALL */ @@ -3700,7 +4196,8 @@ WOLFSSL_API int wolfSSL_set1_curves_list(WOLFSSL* ssl, const char* names); defined(HAVE_STUNNEL) || defined(WOLFSSL_MYSQL_COMPATIBLE) || \ defined(WOLFSSL_NGINX) || defined(WOLFSSL_HAPROXY) -WOLFSSL_API int wolfSSL_CTX_get_verify_mode(WOLFSSL_CTX* ctx); +WOLFSSL_API int wolfSSL_get_verify_mode(const WOLFSSL* ssl); +WOLFSSL_API int wolfSSL_CTX_get_verify_mode(const WOLFSSL_CTX* ctx); #endif @@ -3720,6 +4217,15 @@ WOLFSSL_API int wolfSSL_CTX_AsyncPoll(WOLFSSL_CTX* ctx, WOLF_EVENT** events, int typedef void (*SSL_Msg_Cb)(int write_p, int version, int content_type, const void *buf, size_t len, WOLFSSL *ssl, void *arg); +#if defined(HAVE_SECRET_CALLBACK) +typedef void (*wolfSSL_CTX_keylog_cb_func) + (const WOLFSSL* ssl, const char* line); +WOLFSSL_API void wolfSSL_CTX_set_keylog_callback(WOLFSSL_CTX* ctx, + wolfSSL_CTX_keylog_cb_func cb); +WOLFSSL_API wolfSSL_CTX_keylog_cb_func wolfSSL_CTX_get_keylog_callback( + const WOLFSSL_CTX* ctx); +#endif /* HAVE_SECRET_CALLBACK */ + WOLFSSL_API int wolfSSL_CTX_set_msg_callback(WOLFSSL_CTX *ctx, SSL_Msg_Cb cb); WOLFSSL_API int wolfSSL_set_msg_callback(WOLFSSL *ssl, SSL_Msg_Cb cb); WOLFSSL_API int wolfSSL_CTX_set_msg_callback_arg(WOLFSSL_CTX *ctx, void* arg); @@ -3732,7 +4238,15 @@ WOLFSSL_API int wolfSSL_set_alpn_protos(WOLFSSL* ssl, const unsigned char* protos, unsigned int protos_len); WOLFSSL_API void *wolfSSL_OPENSSL_memdup(const void *data, size_t siz, const char* file, int line); +WOLFSSL_API void wolfSSL_OPENSSL_cleanse(void *ptr, size_t len); WOLFSSL_API void wolfSSL_ERR_load_BIO_strings(void); +WOLFSSL_API void wolfSSL_DH_get0_pqg(const WOLFSSL_DH* dh, + const WOLFSSL_BIGNUM** p, const WOLFSSL_BIGNUM** q, + const WOLFSSL_BIGNUM** g); +WOLFSSL_API void wolfSSL_DH_get0_key(const WOLFSSL_DH *dh, + const WOLFSSL_BIGNUM **pub_key, const WOLFSSL_BIGNUM **priv_key); +WOLFSSL_API int wolfSSL_DH_set0_key(WOLFSSL_DH *dh, WOLFSSL_BIGNUM *pub_key, + WOLFSSL_BIGNUM *priv_key); #endif #if defined(HAVE_OCSP) && !defined(NO_ASN_TIME) @@ -3748,7 +4262,8 @@ WOLFSSL_API void wolfSSL_ERR_load_BIO_strings(void); #if defined(OPENSSL_ALL) \ || defined(WOLFSSL_NGINX) \ || defined(WOLFSSL_HAPROXY) \ - || defined(OPENSSL_EXTRA) + || defined(OPENSSL_EXTRA) \ + || defined(HAVE_STUNNEL) WOLFSSL_API void wolfSSL_OPENSSL_config(char *config_name); #endif @@ -3761,11 +4276,19 @@ WOLFSSL_LOCAL char* wolfSSL_get_ocsp_url(WOLFSSL* ssl); WOLFSSL_API int wolfSSL_set_ocsp_url(WOLFSSL* ssl, char* url); #endif -#if defined(OPENSSL_EXTRA) || defined(WOLFSSL_WPAS_SMALL) +#if defined(OPENSSL_EXTRA) || defined(OPENSSL_EXTRA_X509_SMALL) \ + || defined(WOLFSSL_WPAS_SMALL) WOLFSSL_API void *wolfSSL_X509_get_ex_data(WOLFSSL_X509 *x509, int idx); WOLFSSL_API int wolfSSL_X509_set_ex_data(WOLFSSL_X509 *x509, int idx, void *data); -#endif /* OPENSSL_EXTRA || WOLFSSL_WPAS_SMALL */ +#ifdef HAVE_EX_DATA_CLEANUP_HOOKS +WOLFSSL_API int wolfSSL_X509_set_ex_data_with_cleanup( + X509 *x509, + int idx, + void *data, + wolfSSL_ex_data_cleanup_routine_t cleanup_routine); +#endif +#endif /* OPENSSL_EXTRA || OPENSSL_EXTRA_X509_SMALL || WOLFSSL_WPAS_SMALL */ #if defined(OPENSSL_ALL) || defined(WOLFSSL_NGINX) || defined(WOLFSSL_HAPROXY) \ || defined(OPENSSL_EXTRA) || defined(HAVE_LIGHTY) @@ -3785,7 +4308,11 @@ WOLFSSL_API int wolfSSL_SSL_CTX_remove_session(WOLFSSL_CTX *, WOLFSSL_API WOLFSSL_BIO *wolfSSL_SSL_get_rbio(const WOLFSSL *s); WOLFSSL_API WOLFSSL_BIO *wolfSSL_SSL_get_wbio(const WOLFSSL *s); WOLFSSL_API int wolfSSL_SSL_do_handshake(WOLFSSL *s); +#if defined(OPENSSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER >= 0x10100000L +WOLFSSL_API int wolfSSL_SSL_in_init(const WOLFSSL*); +#else WOLFSSL_API int wolfSSL_SSL_in_init(WOLFSSL*); +#endif WOLFSSL_API int wolfSSL_SSL_in_connect_init(WOLFSSL*); #ifndef NO_SESSION_CACHE @@ -3796,17 +4323,18 @@ WOLFSSL_API int wolfSSL_i2a_ASN1_INTEGER(WOLFSSL_BIO *bp, const WOLFSSL_ASN1_INTEGER *a); #ifdef HAVE_SESSION_TICKET -WOLFSSL_API int wolfSSL_CTX_set_tlsext_ticket_key_cb(WOLFSSL_CTX *, int (*)( - WOLFSSL *ssl, unsigned char *name, unsigned char *iv, - WOLFSSL_EVP_CIPHER_CTX *ectx, WOLFSSL_HMAC_CTX *hctx, int enc)); +typedef int (*ticketCompatCb)(WOLFSSL *ssl, unsigned char *name, unsigned char *iv, + WOLFSSL_EVP_CIPHER_CTX *ectx, WOLFSSL_HMAC_CTX *hctx, int enc); +WOLFSSL_API int wolfSSL_CTX_set_tlsext_ticket_key_cb(WOLFSSL_CTX *, ticketCompatCb); #endif #if defined(HAVE_OCSP) || defined(OPENSSL_EXTRA) || defined(OPENSSL_ALL) || \ defined(WOLFSSL_NGINX) || defined(WOLFSSL_HAPROXY) WOLFSSL_API int wolfSSL_CTX_get_extra_chain_certs(WOLFSSL_CTX* ctx, WOLF_STACK_OF(X509)** chain); -WOLFSSL_API int wolfSSL_CTX_set_tlsext_status_cb(WOLFSSL_CTX* ctx, - int(*)(WOLFSSL*, void*)); +typedef int(*tlsextStatusCb)(WOLFSSL*, void*); +WOLFSSL_API int wolfSSL_CTX_get_tlsext_status_cb(WOLFSSL_CTX* ctx, tlsextStatusCb* cb); +WOLFSSL_API int wolfSSL_CTX_set_tlsext_status_cb(WOLFSSL_CTX* ctx, tlsextStatusCb cb); WOLFSSL_API int wolfSSL_X509_STORE_CTX_get1_issuer(WOLFSSL_X509 **issuer, WOLFSSL_X509_STORE_CTX *ctx, WOLFSSL_X509 *x); @@ -3817,8 +4345,12 @@ WOLFSSL_API WOLF_STACK_OF(WOLFSSL_STRING) *wolfSSL_X509_get1_ocsp(WOLFSSL_X509 * WOLFSSL_API int wolfSSL_X509_check_issued(WOLFSSL_X509 *issuer, WOLFSSL_X509 *subject); -WOLFSSL_API char* wolfSSL_sk_WOLFSSL_STRING_value( +WOLFSSL_API WOLF_STACK_OF(WOLFSSL_STRING)* wolfSSL_sk_WOLFSSL_STRING_new(void); +WOLFSSL_API void wolfSSL_sk_WOLFSSL_STRING_free(WOLF_STACK_OF(WOLFSSL_STRING)* sk); +WOLFSSL_API WOLFSSL_STRING wolfSSL_sk_WOLFSSL_STRING_value( WOLF_STACK_OF(WOLFSSL_STRING)* strings, int idx); +WOLFSSL_API int wolfSSL_sk_WOLFSSL_STRING_num( + WOLF_STACK_OF(WOLFSSL_STRING)* strings); #endif /* HAVE_OCSP || OPENSSL_EXTRA || OPENSSL_ALL || WOLFSSL_NGINX || WOLFSSL_HAPROXY */ WOLFSSL_API int PEM_write_bio_WOLFSSL_X509(WOLFSSL_BIO *bio, @@ -3827,6 +4359,14 @@ WOLFSSL_API int PEM_write_bio_WOLFSSL_X509(WOLFSSL_BIO *bio, #endif /* OPENSSL_ALL || WOLFSSL_NGINX || WOLFSSL_HAPROXY || OPENSSL_EXTRA || HAVE_LIGHTY */ +#if defined(HAVE_SESSION_TICKET) && !defined(WOLFSSL_NO_DEF_TICKET_ENC_CB) && \ + !defined(NO_WOLFSSL_SERVER) +WOLFSSL_API long wolfSSL_CTX_get_tlsext_ticket_keys(WOLFSSL_CTX *ctx, + unsigned char *keys, int keylen); +WOLFSSL_API long wolfSSL_CTX_set_tlsext_ticket_keys(WOLFSSL_CTX *ctx, + unsigned char *keys, int keylen); +#endif + WOLFSSL_API void wolfSSL_get0_alpn_selected(const WOLFSSL *ssl, const unsigned char **data, unsigned int *len); WOLFSSL_API int wolfSSL_select_next_proto(unsigned char **out, @@ -3862,13 +4402,17 @@ WOLFSSL_API int wolfSSL_X509_check_host(WOLFSSL_X509 *x, const char *chk, WOLFSSL_API int wolfSSL_X509_check_ip_asc(WOLFSSL_X509 *x, const char *ipasc, unsigned int flags); #endif +#if defined(OPENSSL_EXTRA) && defined(WOLFSSL_CERT_GEN) +WOLFSSL_API int wolfSSL_X509_check_email(WOLFSSL_X509 *x, const char *chk, + size_t chkLen, unsigned int flags); +#endif /* OPENSSL_EXTRA && WOLFSSL_CERT_GEN */ #if defined(OPENSSL_EXTRA) || defined(OPENSSL_EXTRA_X509_SMALL) #if defined(OPENSSL_ALL) || defined(WOLFSSL_NGINX) || defined(WOLFSSL_HAPROXY) WOLFSSL_API const unsigned char *SSL_SESSION_get0_id_context( const WOLFSSL_SESSION *sess, unsigned int *sid_ctx_length); -WOLFSSL_API size_t SSL_get_finished(const WOLFSSL *s, void *buf, size_t count); -WOLFSSL_API size_t SSL_get_peer_finished(const WOLFSSL *s, void *buf, size_t count); +WOLFSSL_API size_t wolfSSL_get_finished(const WOLFSSL *ssl, void *buf, size_t count); +WOLFSSL_API size_t wolfSSL_get_peer_finished(const WOLFSSL *ssl, void *buf, size_t count); #endif WOLFSSL_API int SSL_SESSION_set1_id(WOLFSSL_SESSION *s, const unsigned char *sid, unsigned int sid_len); @@ -3887,6 +4431,9 @@ WOLFSSL_API int wolfSSL_X509_PUBKEY_get0_param(WOLFSSL_ASN1_OBJECT **ppkalg, con WOLFSSL_API WOLFSSL_EVP_PKEY* wolfSSL_X509_PUBKEY_get(WOLFSSL_X509_PUBKEY* key); WOLFSSL_API int wolfSSL_X509_PUBKEY_set(WOLFSSL_X509_PUBKEY **x, WOLFSSL_EVP_PKEY *key); WOLFSSL_API int i2t_ASN1_OBJECT(char *buf, int buf_len, WOLFSSL_ASN1_OBJECT *a); +WOLFSSL_API WOLFSSL_ASN1_OBJECT *wolfSSL_d2i_ASN1_OBJECT(WOLFSSL_ASN1_OBJECT **a, + const unsigned char **der, + long length); WOLFSSL_API int wolfSSL_i2a_ASN1_OBJECT(WOLFSSL_BIO *bp, WOLFSSL_ASN1_OBJECT *a); WOLFSSL_API int wolfSSL_i2d_ASN1_OBJECT(WOLFSSL_ASN1_OBJECT *a, unsigned char **pp); WOLFSSL_API void SSL_CTX_set_tmp_dh_callback(WOLFSSL_CTX *ctx, WOLFSSL_DH *(*dh) (WOLFSSL *ssl, int is_export, int keylength)); @@ -3899,7 +4446,7 @@ WOLFSSL_API int wolfSSL_sk_SSL_CIPHER_find( WOLFSSL_API void wolfSSL_sk_SSL_CIPHER_free(WOLF_STACK_OF(WOLFSSL_CIPHER)* sk); WOLFSSL_API int wolfSSL_sk_SSL_COMP_zero(WOLFSSL_STACK* st); WOLFSSL_API int wolfSSL_sk_SSL_COMP_num(WOLF_STACK_OF(WOLFSSL_COMP)* sk); -WOLFSSL_API WOLFSSL_CIPHER* wolfSSL_sk_SSL_CIPHER_value(void *ciphers, int idx); +WOLFSSL_API WOLFSSL_CIPHER* wolfSSL_sk_SSL_CIPHER_value(WOLFSSL_STACK* sk, int i); WOLFSSL_API void ERR_load_SSL_strings(void); WOLFSSL_API void wolfSSL_EC_POINT_dump(const char *msg, const WOLFSSL_EC_POINT *p); @@ -3911,6 +4458,8 @@ WOLFSSL_API unsigned char* wolfSSL_ASN1_TIME_get_data(WOLFSSL_ASN1_TIME *t); WOLFSSL_API WOLFSSL_ASN1_TIME *wolfSSL_ASN1_TIME_to_generalizedtime(WOLFSSL_ASN1_TIME *t, WOLFSSL_ASN1_TIME **out); WOLFSSL_API int wolfSSL_i2c_ASN1_INTEGER(WOLFSSL_ASN1_INTEGER *a, unsigned char **pp); +WOLFSSL_API int wolfSSL_a2i_ASN1_INTEGER(WOLFSSL_BIO *bio, WOLFSSL_ASN1_INTEGER *asn1, + char *buf, int size); WOLFSSL_API int wolfSSL_X509_CA_num(WOLFSSL_X509_STORE *store); WOLFSSL_API long wolfSSL_X509_get_version(const WOLFSSL_X509 *x); WOLFSSL_API int wolfSSL_X509_get_signature_nid(const WOLFSSL_X509* x); @@ -3943,8 +4492,45 @@ WOLFSSL_API int wolfSSL_CTX_set_ephemeral_key(WOLFSSL_CTX* ctx, int keyAlgo, const char* key, unsigned int keySz, int format); WOLFSSL_API int wolfSSL_set_ephemeral_key(WOLFSSL* ssl, int keyAlgo, const char* key, unsigned int keySz, int format); + +/* returns pointer to loaded key as ASN.1/DER */ +WOLFSSL_API int wolfSSL_CTX_get_ephemeral_key(WOLFSSL_CTX* ctx, int keyAlgo, + const unsigned char** key, unsigned int* keySz); +WOLFSSL_API int wolfSSL_get_ephemeral_key(WOLFSSL* ssl, int keyAlgo, + const unsigned char** key, unsigned int* keySz); #endif +#if defined(OPENSSL_EXTRA) +WOLFSSL_API int wolfSSL_EVP_PKEY_param_check(WOLFSSL_EVP_PKEY_CTX* ctx); +WOLFSSL_API void wolfSSL_CTX_set_security_level(WOLFSSL_CTX* ctx, int level); +WOLFSSL_API int wolfSSL_CTX_get_security_level(const WOLFSSL_CTX* ctx); + +WOLFSSL_API int wolfSSL_SESSION_is_resumable(const WOLFSSL_SESSION *s); + +WOLFSSL_API void wolfSSL_CRYPTO_free(void *str, const char *file, int line); +WOLFSSL_API void *wolfSSL_CRYPTO_malloc(size_t num, const char *file, int line); + +WOLFSSL_API WOLFSSL_CONF_CTX* wolfSSL_CONF_CTX_new(void); +WOLFSSL_API void wolfSSL_CONF_CTX_free(WOLFSSL_CONF_CTX* cctx); +WOLFSSL_API void wolfSSL_CONF_CTX_set_ssl_ctx(WOLFSSL_CONF_CTX* cctx, WOLFSSL_CTX *ctx); +WOLFSSL_API unsigned int wolfSSL_CONF_CTX_set_flags(WOLFSSL_CONF_CTX* cctx, unsigned int flags); +WOLFSSL_API int wolfSSL_CONF_CTX_finish(WOLFSSL_CONF_CTX* cctx); + +#define WOLFSSL_CONF_FLAG_CMDLINE 0x1 +#define WOLFSSL_CONF_FLAG_FILE 0x2 +#define WOLFSSL_CONF_FLAG_CERTIFICATE 0x20 + +#define WOLFSSL_CONF_TYPE_STRING 0x1 +#define WOLFSSL_CONF_TYPE_FILE 0x2 + +WOLFSSL_API int wolfSSL_CONF_cmd(WOLFSSL_CONF_CTX* cctx, const char* cmd, const char* value); +#endif /* OPENSSL_EXTRA */ +#if defined(HAVE_EX_DATA) || defined(FORTRESS) || defined(WOLFSSL_WPAS_SMALL) +WOLFSSL_API int wolfSSL_CRYPTO_get_ex_new_index(int class_index, long argl, void *argp, + WOLFSSL_CRYPTO_EX_new* new_func, + WOLFSSL_CRYPTO_EX_dup* dup_func, + WOLFSSL_CRYPTO_EX_free* free_func); +#endif /* HAVE_EX_DATA || FORTRESS */ #ifdef __cplusplus } /* extern "C" */ #endif diff --git a/source/libwolfssl/version.h b/source/libwolfssl/version.h index fe258fcc..471f5636 100644 --- a/source/libwolfssl/version.h +++ b/source/libwolfssl/version.h @@ -1,6 +1,6 @@ /* wolfssl_version.h.in * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -28,8 +28,8 @@ extern "C" { #endif -#define LIBWOLFSSL_VERSION_STRING "4.5.0" -#define LIBWOLFSSL_VERSION_HEX 0x04005000 +#define LIBWOLFSSL_VERSION_STRING "4.8.1" +#define LIBWOLFSSL_VERSION_HEX 0x04008001 #ifdef __cplusplus } diff --git a/source/libwolfssl/wolfcrypt/aes.h b/source/libwolfssl/wolfcrypt/aes.h index b45ad78b..ed0a0dce 100644 --- a/source/libwolfssl/wolfcrypt/aes.h +++ b/source/libwolfssl/wolfcrypt/aes.h @@ -1,6 +1,6 @@ /* aes.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -34,13 +34,13 @@ block cipher mechanism that uses n-bit binary string parameter key with 128-bits #ifndef WOLF_CRYPT_AES_H #define WOLF_CRYPT_AES_H -#include +#include #ifndef NO_AES #if defined(HAVE_FIPS) && \ defined(HAVE_FIPS_VERSION) && (HAVE_FIPS_VERSION >= 2) - #include + #include #endif /* HAVE_FIPS_VERSION >= 2 */ /* included for fips @wc_fips */ @@ -56,10 +56,10 @@ block cipher mechanism that uses n-bit binary string parameter key with 128-bits #endif #ifndef WC_NO_RNG - #include + #include #endif #ifdef STM32_CRYPTO - #include + #include #endif #ifdef WOLFSSL_IMXRT_DCP @@ -72,24 +72,29 @@ block cipher mechanism that uses n-bit binary string parameter key with 128-bits #if defined(WOLFSSL_AFALG) || defined(WOLFSSL_AFALG_XILINX_AES) /* included for struct msghdr */ -#include +#include #endif #if defined(WOLFSSL_DEVCRYPTO_AES) || defined(WOLFSSL_DEVCRYPTO_CBC) -#include +#include #endif +#ifdef WOLFSSL_SILABS_SE_ACCEL + #include +#endif + + #if defined(HAVE_AESGCM) && !defined(WC_NO_RNG) - #include + #include #endif #if defined(WOLFSSL_CRYPTOCELL) - #include + #include #endif #if defined(WOLFSSL_RENESAS_TSIP_TLS) && \ defined(WOLFSSL_RENESAS_TSIP_TLS_AES_CRYPT) - #include + #include #endif #ifdef __cplusplus @@ -113,7 +118,7 @@ enum { (defined(HAVE_FIPS_VERSION) && (HAVE_FIPS_VERSION >= 2)) #ifdef WOLFSSL_ASYNC_CRYPT - #include + #include #endif enum { @@ -143,7 +148,8 @@ enum { #endif #ifdef HAVE_PKCS11 - AES_MAX_ID_LEN = 32, + AES_MAX_ID_LEN = 32, + AES_MAX_LABEL_LEN = 32, #endif }; @@ -171,6 +177,12 @@ struct Aes { #ifdef GCM_TABLE /* key-based fast multiplication table. */ ALIGN16 byte M0[256][AES_BLOCK_SIZE]; +#elif defined(GCM_TABLE_4BIT) + #if defined(BIG_ENDIAN_ORDER) || defined(WC_16BIT_CPU) + ALIGN16 byte M0[16][AES_BLOCK_SIZE]; + #else + ALIGN16 byte M0[32][AES_BLOCK_SIZE]; + #endif #endif /* GCM_TABLE */ #ifdef HAVE_CAVIUM_OCTEON_SYNC word32 y0; @@ -186,6 +198,8 @@ struct Aes { #ifdef HAVE_PKCS11 byte id[AES_MAX_ID_LEN]; int idLen; + char label[AES_MAX_LABEL_LEN]; + int labelLen; #endif #ifdef WOLFSSL_ASYNC_CRYPT WC_ASYNC_DEV asyncDev; @@ -231,8 +245,26 @@ struct Aes { #endif #if defined(WOLFSSL_IMXRT_DCP) dcp_handle_t handle; +#endif +#if defined(WOLFSSL_SILABS_SE_ACCEL) + silabs_aes_t ctx; #endif void* heap; /* memory hint to use */ +#ifdef WOLFSSL_AESGCM_STREAM +#if !defined(WOLFSSL_SMALL_STACK) || defined(WOLFSSL_AESNI) + ALIGN16 byte streamData[5 * AES_BLOCK_SIZE]; +#else + byte* streamData; +#endif + word32 aSz; + word32 cSz; + byte over; + byte aOver; + byte cOver; + byte gcmKeySet:1; + byte nonceSet:1; + byte ctrSet:1; +#endif }; #ifndef WC_AES_TYPE_DEFINED @@ -344,6 +376,26 @@ WOLFSSL_API int wc_AesEcbDecrypt(Aes* aes, byte* out, const byte* iv, word32 ivSz, const byte* authTag, word32 authTagSz, const byte* authIn, word32 authInSz); +#ifdef WOLFSSL_AESGCM_STREAM +WOLFSSL_API int wc_AesGcmInit(Aes* aes, const byte* key, word32 len, + const byte* iv, word32 ivSz); + +WOLFSSL_API int wc_AesGcmEncryptInit(Aes* aes, const byte* key, word32 len, + const byte* iv, word32 ivSz); +WOLFSSL_API int wc_AesGcmEncryptInit_ex(Aes* aes, const byte* key, word32 len, + byte* ivOut, word32 ivOutSz); +WOLFSSL_API int wc_AesGcmEncryptUpdate(Aes* aes, byte* out, const byte* in, + word32 sz, const byte* authIn, word32 authInSz); +WOLFSSL_API int wc_AesGcmEncryptFinal(Aes* aes, byte* authTag, + word32 authTagSz); + +WOLFSSL_API int wc_AesGcmDecryptInit(Aes* aes, const byte* key, word32 len, + const byte* iv, word32 ivSz); +WOLFSSL_API int wc_AesGcmDecryptUpdate(Aes* aes, byte* out, const byte* in, + word32 sz, const byte* authIn, word32 authInSz); +WOLFSSL_API int wc_AesGcmDecryptFinal(Aes* aes, const byte* authTag, + word32 authTagSz); +#endif #ifndef WC_NO_RNG WOLFSSL_API int wc_AesGcmSetExtIV(Aes* aes, const byte* iv, word32 ivSz); @@ -399,10 +451,18 @@ WOLFSSL_API int wc_AesEcbDecrypt(Aes* aes, byte* out, const byte* in, word32 inSz, byte* out, word32 outSz, const byte* iv); + WOLFSSL_API int wc_AesKeyWrap_ex(Aes *aes, + const byte* in, word32 inSz, + byte* out, word32 outSz, + const byte* iv); WOLFSSL_API int wc_AesKeyUnWrap(const byte* key, word32 keySz, const byte* in, word32 inSz, byte* out, word32 outSz, const byte* iv); + WOLFSSL_API int wc_AesKeyUnWrap_ex(Aes *aes, + const byte* in, word32 inSz, + byte* out, word32 outSz, + const byte* iv); #endif /* HAVE_AES_KEYWRAP */ #ifdef WOLFSSL_AES_XTS @@ -431,6 +491,8 @@ WOLFSSL_API int wc_AesInit(Aes* aes, void* heap, int devId); #ifdef HAVE_PKCS11 WOLFSSL_API int wc_AesInit_Id(Aes* aes, unsigned char* id, int len, void* heap, int devId); +WOLFSSL_API int wc_AesInit_Label(Aes* aes, const char* label, void* heap, + int devId); #endif WOLFSSL_API void wc_AesFree(Aes* aes); diff --git a/source/libwolfssl/wolfcrypt/arc4.h b/source/libwolfssl/wolfcrypt/arc4.h index db39e26d..cfc625f3 100644 --- a/source/libwolfssl/wolfcrypt/arc4.h +++ b/source/libwolfssl/wolfcrypt/arc4.h @@ -1,6 +1,6 @@ /* arc4.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -26,14 +26,14 @@ #ifndef WOLF_CRYPT_ARC4_H #define WOLF_CRYPT_ARC4_H -#include +#include #ifdef __cplusplus extern "C" { #endif #ifdef WOLFSSL_ASYNC_CRYPT - #include + #include #endif enum { diff --git a/source/libwolfssl/wolfcrypt/asn.h b/source/libwolfssl/wolfcrypt/asn.h index 0266cc79..d87d8682 100644 --- a/source/libwolfssl/wolfcrypt/asn.h +++ b/source/libwolfssl/wolfcrypt/asn.h @@ -1,6 +1,6 @@ /* asn.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -34,7 +34,7 @@ that can be serialized and deserialized in a cross-platform way. #ifndef WOLF_CRYPT_ASN_H #define WOLF_CRYPT_ASN_H -#include +#include #ifndef NO_ASN @@ -43,7 +43,7 @@ that can be serialized and deserialized in a cross-platform way. #define NO_ASN_TIME /* backwards compatibility with NO_TIME_H */ #endif -#include +#include /* fips declare of RsaPrivateKeyDecode @wc_fips */ #if defined(HAVE_FIPS) && !defined(NO_RSA) && \ @@ -52,19 +52,19 @@ that can be serialized and deserialized in a cross-platform way. #endif #ifndef NO_DH - #include + #include #endif #ifndef NO_DSA - #include + #include #endif #ifndef NO_SHA - #include + #include #endif #ifndef NO_MD5 - #include + #include #endif -#include -#include /* public interface */ +#include +#include /* public interface */ #if defined(NO_SHA) && defined(NO_SHA256) #define WC_SHA256_DIGEST_SIZE 32 @@ -100,6 +100,7 @@ enum ASN_Tags { ASN_SEQUENCE = 0x10, ASN_SET = 0x11, ASN_PRINTABLE_STRING = 0x13, + ASN_IA5_STRING = 0x16, ASN_UTC_TIME = 0x17, ASN_OTHER_TYPE = 0x00, ASN_RFC822_TYPE = 0x01, @@ -139,9 +140,13 @@ enum DN_Tags { /* pilot attribute types * OID values of 0.9.2342.19200300.100.1.* */ ASN_USER_ID = 0x01, /* UID */ + ASN_FAVOURITE_DRINK = 0x05, /* favouriteDrink */ ASN_DOMAIN_COMPONENT = 0x19 /* DC */ }; +/* This is the size of the smallest possible PEM header and footer */ +extern const int pem_struct_min_sz; + #if defined(OPENSSL_EXTRA) || defined(OPENSSL_EXTRA_X509_SMALL) typedef struct WOLFSSL_ObjectInfo { int nid; @@ -178,6 +183,7 @@ extern const WOLFSSL_ObjectInfo wolfssl_object_info[]; #define WOLFSSL_USER_ID "/UID=" #define WOLFSSL_DOMAIN_COMPONENT "/DC=" +#define WOLFSSL_FAVOURITE_DRINK "/favouriteDrink=" #if defined(WOLFSSL_APACHE_HTTPD) /* otherName strings */ @@ -192,6 +198,7 @@ extern const WOLFSSL_ObjectInfo wolfssl_object_info[]; #define WOLFSSL_TLS_FEATURE_SUM 92 #endif +#if defined(OPENSSL_EXTRA) || defined(OPENSSL_EXTRA_X509_SMALL) /* NIDs */ enum { @@ -202,6 +209,7 @@ enum NID_sha256 = 672, NID_sha384 = 673, NID_sha512 = 674, + NID_pkcs9_challengePassword = 54, NID_hw_name_oid = 73, NID_id_pkix_OCSP_basic = 74, NID_any_policy = 75, @@ -228,6 +236,7 @@ enum NID_inhibit_any_policy = 168, /* 2.5.29.54 */ NID_tlsfeature = 1020, /* id-pe 24 */ NID_commonName = 0x03, /* matches ASN_COMMON_NAME in asn.h */ + NID_buildingName = 1494, NID_surname = 0x04, /* SN */ @@ -241,6 +250,7 @@ enum NID_jurisdictionStateOrProvinceName = 0xd, NID_businessCategory = ASN_BUS_CAT, NID_domainComponent = ASN_DOMAIN_COMPONENT, + NID_favouriteDrink = 462, NID_userId = 458, NID_emailAddress = 0x30, /* emailAddress */ NID_id_on_dnsSRV = 82, /* 1.3.6.1.5.5.7.8.7 */ @@ -248,6 +258,7 @@ enum NID_X9_62_prime_field = 406 /* 1.2.840.10045.1.1 */ }; +#endif /* OPENSSL_EXTRA */ enum ECC_TYPES { @@ -299,12 +310,17 @@ enum Misc_ASN { KEYID_SIZE = WC_SHA_DIGEST_SIZE, #endif RSA_INTS = 8, /* RSA ints in private key */ + DSA_PARAM_INTS = 3, /* DSA paramater ints */ DSA_INTS = 5, /* DSA ints in private key */ - MIN_DATE_SIZE = 13, + MIN_DATE_SIZE = 12, MAX_DATE_SIZE = 32, ASN_GEN_TIME_SZ = 15, /* 7 numbers * 2 + Zulu tag */ #ifndef NO_RSA - MAX_ENCODED_SIG_SZ = 512, +#ifdef WOLFSSL_HAPROXY + MAX_ENCODED_SIG_SZ = 1024, /* Supports 8192 bit keys */ +#else + MAX_ENCODED_SIG_SZ = 512, /* Supports 4096 bit keys */ +#endif #elif defined(HAVE_ECC) MAX_ENCODED_SIG_SZ = 140, #elif defined(HAVE_CURVE448) @@ -324,7 +340,7 @@ enum Misc_ASN { MAX_ENCODED_DIG_ASN_SZ= 9, /* enum(bit or octet) + length(4) */ MAX_ENCODED_DIG_SZ = 64 + MAX_ENCODED_DIG_ASN_SZ, /* asn header + sha512 */ MAX_RSA_INT_SZ = 517, /* RSA raw sz 4096 for bits + tag + len(4) */ - MAX_DSA_INT_SZ = 261, /* DSA raw sz 2048 for bits + tag + len(4) */ + MAX_DSA_INT_SZ = 389, /* DSA raw sz 3072 for bits + tag + len(4) */ MAX_NTRU_KEY_SZ = 610, /* NTRU 112 bit public key */ MAX_NTRU_ENC_SZ = 628, /* NTRU 112 bit DER public encoding */ MAX_LENGTH_SZ = 4, /* Max length size for DER encoding */ @@ -382,6 +398,9 @@ enum Misc_ASN { MIN_VERSION_SZ = 3, /* Min bytes needed for GetMyVersion */ MAX_X509_VERSION = 3, /* Max X509 version allowed */ MIN_X509_VERSION = 0, /* Min X509 version allowed */ + WOLFSSL_X509_V1 = 0, + WOLFSSL_X509_V2 = 1, + WOLFSSL_X509_V3 = 2, #if defined(OPENSSL_ALL) || defined(WOLFSSL_MYSQL_COMPATIBLE) || \ defined(WOLFSSL_NGINX) || defined(WOLFSSL_HAPROXY) || \ defined(OPENSSL_EXTRA) || defined(HAVE_PKCS7) @@ -422,6 +441,7 @@ enum Oid_Types { oidCertNameType = 17, oidTlsExtType = 18, oidCrlExtType = 19, + oidCsrAttrType = 20, oidIgnoreType }; @@ -521,23 +541,23 @@ enum HMAC_Sum { enum Extensions_Sum { - BASIC_CA_OID = 133, - ALT_NAMES_OID = 131, - CRL_DIST_OID = 145, - AUTH_INFO_OID = 69, /* id-pe 1 */ - AUTH_KEY_OID = 149, - SUBJ_KEY_OID = 128, - CERT_POLICY_OID = 146, - KEY_USAGE_OID = 129, /* 2.5.29.15 */ - INHIBIT_ANY_OID = 168, /* 2.5.29.54 */ + BASIC_CA_OID = 133, /* 2.5.29.19 */ + ALT_NAMES_OID = 131, /* 2.5.29.17 */ + CRL_DIST_OID = 145, /* 2.5.29.31 */ + AUTH_INFO_OID = 69, /* 1.3.6.1.5.5.7.1.1 */ + AUTH_KEY_OID = 149, /* 2.5.29.35 */ + SUBJ_KEY_OID = 128, /* 2.5.29.14 */ + CERT_POLICY_OID = 146, /* 2.5.29.32 */ + KEY_USAGE_OID = 129, /* 2.5.29.15 */ + INHIBIT_ANY_OID = 168, /* 2.5.29.54 */ EXT_KEY_USAGE_OID = 151, /* 2.5.29.37 */ NAME_CONS_OID = 144, /* 2.5.29.30 */ PRIV_KEY_USAGE_PERIOD_OID = 130, /* 2.5.29.16 */ - SUBJECT_INFO_ACCESS = 79, /* id-pe 11 */ - POLICY_MAP_OID = 147, - POLICY_CONST_OID = 150, - ISSUE_ALT_NAMES_OID = 132, - TLS_FEATURE_OID = 92, /* id-pe 24 */ + SUBJECT_INFO_ACCESS = 79, /* 1.3.6.1.5.5.7.1.11 */ + POLICY_MAP_OID = 147, /* 2.5.29.33 */ + POLICY_CONST_OID = 150, /* 2.5.29.36 */ + ISSUE_ALT_NAMES_OID = 132, /* 2.5.29.18 */ + TLS_FEATURE_OID = 92, /* 1.3.6.1.5.5.7.1.24 */ NETSCAPE_CT_OID = 753, /* 2.16.840.1.113730.1.1 */ OCSP_NOCHECK_OID = 121 /* 1.3.6.1.5.5.7.48.1.5 id-pkix-ocsp-nocheck */ @@ -579,6 +599,7 @@ enum VerifyType { VERIFY_OCSP = 3, VERIFY_NAME = 4, VERIFY_SKIP_DATE = 5, + VERIFY_OCSP_CERT = 6, }; #ifdef WOLFSSL_CERT_EXT @@ -588,6 +609,14 @@ enum KeyIdType { }; #endif +#ifdef WOLFSSL_CERT_REQ +enum CsrAttrType { + CHALLENGE_PASSWORD_OID = 659, + SERIAL_NUMBER_OID = 94, + EXTENSION_REQUEST_OID = 666, +}; +#endif + /* Key usage extension bits (based on RFC 5280) */ #define KEYUSE_DIGITAL_SIG 0x0080 #define KEYUSE_CONTENT_COMMIT 0x0040 @@ -660,15 +689,21 @@ struct SignatureCtx { byte* digest; #ifndef NO_RSA byte* out; - byte* plain; #endif -#if defined(HAVE_ECC) || defined(HAVE_ED25519) || defined(HAVE_ED448) +#if !(defined(NO_RSA) && defined(NO_DSA)) + byte* sigCpy; +#endif +#if defined(HAVE_ECC) || defined(HAVE_ED25519) || defined(HAVE_ED448) || \ + !defined(NO_DSA) int verify; #endif union { #ifndef NO_RSA struct RsaKey* rsa; #endif + #ifndef NO_DSA + struct DsaKey* dsa; + #endif #ifdef HAVE_ECC struct ecc_key* ecc; #endif @@ -766,6 +801,7 @@ struct DecodedCert { DNS_entry* altNames; /* alt names list of dns entries */ #ifndef IGNORE_NAME_CONSTRAINTS DNS_entry* altEmailNames; /* alt names list of RFC822 entries */ + DNS_entry* altDirNames; /* alt names list of DIR entries */ Base_entry* permittedNames; /* Permitted name bases */ Base_entry* excludedNames; /* Excluded name bases */ #endif /* IGNORE_NAME_CONSTRAINTS */ @@ -805,6 +841,7 @@ struct DecodedCert { byte maxPathLen; /* max_path_len see RFC 5280 section * 6.1.2 "Initialization" - (k) for * description of max_path_len */ + byte policyConstSkip; /* Policy Constraints skip certs value */ word16 extKeyUsage; /* Key usage bitfield */ byte extExtKeyUsage; /* Extended Key usage bitfield */ @@ -888,6 +925,14 @@ struct DecodedCert { int extCertPoliciesNb; #endif /* defined(WOLFSSL_CERT_GEN) || defined(WOLFSSL_CERT_EXT) */ +#ifdef WOLFSSL_CERT_REQ + /* CSR attributes */ + char* cPwd; /* challengePassword */ + int cPwdLen; + char* sNum; /* Serial Number */ + int sNumLen; +#endif /* WOLFSSL_CERT_REQ */ + Signer* ca; #ifndef NO_CERTS SignatureCtx sigCtx; @@ -917,6 +962,9 @@ struct DecodedCert { byte extCRLdistSet : 1; byte extAuthInfoSet : 1; byte extBasicConstSet : 1; + byte extPolicyConstSet : 1; + byte extPolicyConstRxpSet : 1; /* requireExplicitPolicy set */ + byte extPolicyConstIpmSet : 1; /* inhibitPolicyMapping set */ byte extSubjAltNameSet : 1; byte inhibitAnyOidSet : 1; byte selfSigned : 1; /* Indicates subject and issuer are same */ @@ -927,6 +975,7 @@ struct DecodedCert { byte extCRLdistCrit : 1; byte extAuthInfoCrit : 1; byte extBasicConstCrit : 1; + byte extPolicyConstCrit : 1; byte extSubjAltNameCrit : 1; byte extAuthKeyIdCrit : 1; #ifndef IGNORE_NAME_CONSTRAINTS @@ -939,9 +988,19 @@ struct DecodedCert { #if defined(WOLFSSL_SEP) || defined(WOLFSSL_QT) byte extCertPolicyCrit : 1; #endif - +#ifdef WOLFSSL_CERT_REQ + byte isCSR : 1; /* Do we intend on parsing a CSR? */ +#endif }; +/* ASN Encoded Name field */ +typedef struct EncodedName { + int nameLen; /* actual string value length */ + int totalLen; /* total encoded length */ + int type; /* type of name */ + int used; /* are we actually using this one */ + byte encoded[CTC_NAME_SIZE * 2]; /* encoding */ +} EncodedName; #ifdef NO_SHA #define SIGNER_DIGEST_SIZE WC_SHA256_DIGEST_SIZE @@ -1015,6 +1074,42 @@ struct TrustedPeerCert { #define WOLFSSL_ASN_API WOLFSSL_LOCAL #endif +#ifdef HAVE_SMIME +#define MIME_HEADER_ASCII_MIN 33 +#define MIME_HEADER_ASCII_MAX 126 + +typedef struct MimeParam MimeParam; +typedef struct MimeHdr MimeHdr; + +struct MimeParam +{ + MimeParam* next; + char* attribute; + char* value; +}; + +struct MimeHdr +{ + MimeHdr* next; + MimeParam* params; + char* name; + char* body; +}; + +typedef enum MimeTypes +{ + MIME_HDR, + MIME_PARAM +} MimeTypes; + +typedef enum MimeStatus +{ + MIME_NAMEATTR, + MIME_BODYVAL +} MimeStatus; +#endif /* HAVE_SMIME */ + + WOLFSSL_LOCAL int CalcHashId(const byte* data, word32 len, byte* hash); WOLFSSL_LOCAL int GetName(DecodedCert* cert, int nameType, int maxIdx); @@ -1036,6 +1131,12 @@ WOLFSSL_LOCAL int EncodePolicyOID(byte *out, word32 *outSz, WOLFSSL_API int CheckCertSignature(const byte*,word32,void*,void* cm); WOLFSSL_LOCAL int CheckCertSignaturePubKey(const byte* cert, word32 certSz, void* heap, const byte* pubKey, word32 pubKeySz, int pubKeyOID); +#ifdef WOLFSSL_CERT_REQ +WOLFSSL_LOCAL int CheckCSRSignaturePubKey(const byte* cert, word32 certSz, void* heap, + const byte* pubKey, word32 pubKeySz, int pubKeyOID); +#endif /* WOLFSSL_CERT_REQ */ +WOLFSSL_LOCAL int AddSignature(byte* buf, int bodySz, const byte* sig, int sigSz, + int sigAlgoType); WOLFSSL_LOCAL int ParseCertRelative(DecodedCert*,int type,int verify,void* cm); WOLFSSL_LOCAL int DecodeToKey(DecodedCert*, int verify); WOLFSSL_LOCAL int wc_GetPubX509(DecodedCert* cert, int verify, int* badDate); @@ -1086,6 +1187,10 @@ WOLFSSL_LOCAL int DateGreaterThan(const struct tm* a, const struct tm* b); WOLFSSL_LOCAL int wc_ValidateDate(const byte* date, byte format, int dateType); WOLFSSL_LOCAL int wc_OBJ_sn2nid(const char *sn); +WOLFSSL_LOCAL int wc_EncodeName(EncodedName* name, const char* nameStr, + char nameType, byte type); +WOLFSSL_LOCAL int wc_EncodeNameCanonical(EncodedName* name, const char* nameStr, + char nameType, byte type); /* ASN.1 helper functions */ #ifdef WOLFSSL_CERT_GEN WOLFSSL_ASN_API int SetName(byte* output, word32 outputSz, CertName* name); @@ -1108,6 +1213,8 @@ WOLFSSL_LOCAL int GetSequence_ex(const byte* input, word32* inOutIdx, int* len, word32 maxIdx, int check); WOLFSSL_LOCAL int GetOctetString(const byte* input, word32* inOutIdx, int* len, word32 maxIdx); +WOLFSSL_LOCAL int CheckBitString(const byte* input, word32* inOutIdx, int* len, + word32 maxIdx, int zeroBits, byte* unusedBits); WOLFSSL_LOCAL int GetSet(const byte* input, word32* inOutIdx, int* len, word32 maxIdx); WOLFSSL_LOCAL int GetSet_ex(const byte* input, word32* inOutIdx, int* len, @@ -1136,12 +1243,7 @@ WOLFSSL_LOCAL int GetASNTag(const byte* input, word32* idx, byte* tag, WOLFSSL_LOCAL word32 SetLength(word32 length, byte* output); WOLFSSL_LOCAL word32 SetSequence(word32 len, byte* output); WOLFSSL_LOCAL word32 SetOctetString(word32 len, byte* output); -#if (defined(WOLFSSL_QT) || defined(OPENSSL_ALL)) && !defined(NO_DH) \ - || defined(WOLFSSL_OPENSSH) -WOLFSSL_LOCAL int wc_DhParamsToDer(DhKey* key, byte* out, word32* outSz); -WOLFSSL_LOCAL int wc_DhPubKeyToDer(DhKey* key, byte* out, word32* outSz); -WOLFSSL_LOCAL int wc_DhPrivKeyToDer(DhKey* key, byte* out, word32* outSz); -#endif +WOLFSSL_LOCAL int SetASNInt(int len, byte firstByte, byte* output); WOLFSSL_LOCAL word32 SetBitString(word32 len, byte unusedBits, byte* output); WOLFSSL_LOCAL word32 SetImplicit(byte tag,byte number,word32 len,byte* output); WOLFSSL_LOCAL word32 SetExplicit(byte number, word32 len, byte* output); @@ -1154,14 +1256,20 @@ WOLFSSL_LOCAL int GetSerialNumber(const byte* input, word32* inOutIdx, byte* serial, int* serialSz, word32 maxIdx); WOLFSSL_LOCAL int GetNameHash(const byte* source, word32* idx, byte* hash, int maxIdx); -WOLFSSL_LOCAL int wc_CheckPrivateKey(byte* key, word32 keySz, DecodedCert* der); +WOLFSSL_LOCAL int wc_CheckPrivateKeyCert(const byte* key, word32 keySz, DecodedCert* der); +WOLFSSL_LOCAL int wc_CheckPrivateKey(const byte* privKey, word32 privKeySz, + const byte* pubKey, word32 pubKeySz, enum Key_Sum ks); WOLFSSL_LOCAL int StoreDHparams(byte* out, word32* outLen, mp_int* p, mp_int* g); WOLFSSL_LOCAL int FlattenAltNames( byte*, word32, const DNS_entry*); -#ifdef HAVE_ECC +#if defined(HAVE_ECC) || !defined(NO_DSA) /* ASN sig helpers */ WOLFSSL_LOCAL int StoreECC_DSA_Sig(byte* out, word32* outLen, mp_int* r, mp_int* s); + WOLFSSL_LOCAL int StoreECC_DSA_Sig_Bin(byte* out, word32* outLen, + const byte* r, word32 rLen, const byte* s, word32 sLen); + WOLFSSL_LOCAL int DecodeECC_DSA_Sig_Bin(const byte* sig, word32 sigLen, + byte* r, word32* rLen, byte* s, word32* sLen); WOLFSSL_LOCAL int DecodeECC_DSA_Sig(const byte* sig, word32 sigLen, mp_int* r, mp_int* s); #endif @@ -1174,8 +1282,8 @@ WOLFSSL_LOCAL void FreeSignatureCtx(SignatureCtx* sigCtx); #ifndef NO_CERTS -WOLFSSL_LOCAL int wc_EncryptedInfoParse(EncryptedInfo* info, char** pBuffer, - size_t bufSz); +WOLFSSL_LOCAL int wc_EncryptedInfoParse(EncryptedInfo* info, + const char** pBuffer, size_t bufSz); WOLFSSL_LOCAL int PemToDer(const unsigned char* buff, long sz, int type, DerBuffer** pDer, void* heap, EncryptedInfo* info, @@ -1185,6 +1293,17 @@ WOLFSSL_LOCAL void FreeDer(DerBuffer** der); #endif /* !NO_CERTS */ +#ifdef HAVE_SMIME +WOLFSSL_LOCAL int wc_MIME_parse_headers(char* in, int inLen, MimeHdr** hdrs); +WOLFSSL_LOCAL int wc_MIME_header_strip(char* in, char** out, size_t start, size_t end); +WOLFSSL_LOCAL int wc_MIME_create_header(char* name, char* body, MimeHdr** hdr); +WOLFSSL_LOCAL int wc_MIME_create_parameter(char* attribute, char* value, MimeParam** param); +WOLFSSL_LOCAL MimeHdr* wc_MIME_find_header_name(const char* name, MimeHdr* hdr); +WOLFSSL_LOCAL MimeParam* wc_MIME_find_param_attr(const char* attribute, MimeParam* param); +WOLFSSL_LOCAL char* wc_MIME_canonicalize(const char* line); +WOLFSSL_LOCAL int wc_MIME_free_hdrs(MimeHdr* head); +#endif /* HAVE_SMIME */ + #ifdef WOLFSSL_CERT_GEN enum cert_enums { @@ -1200,7 +1319,8 @@ enum cert_enums { NTRU_KEY = 11, ECC_KEY = 12, ED25519_KEY = 13, - ED448_KEY = 14 + ED448_KEY = 14, + DSA_KEY = 15 }; #endif /* WOLFSSL_CERT_GEN */ @@ -1251,6 +1371,9 @@ struct CertStatus { byte serial[EXTERNAL_SERIAL_SIZE]; int serialSz; +#ifdef OPENSSL_EXTRA + WOLFSSL_ASN1_INTEGER* serialInt; +#endif int status; @@ -1258,7 +1381,7 @@ struct CertStatus { byte nextDate[MAX_DATE_SIZE]; byte thisDateFormat; byte nextDateFormat; -#if defined(OPENSSL_ALL) || defined(WOLFSSL_NGINX) || defined(WOLFSSL_HAPROXY) +#if defined(OPENSSL_ALL) || defined(WOLFSSL_NGINX) || defined(WOLFSSL_HAPROXY) || defined(HAVE_LIGHTY) WOLFSSL_ASN1_TIME thisDateParsed; WOLFSSL_ASN1_TIME nextDateParsed; byte* thisDateAsn; @@ -1269,7 +1392,36 @@ struct CertStatus { word32 rawOcspResponseSz; }; +typedef struct OcspEntry OcspEntry; +#ifdef NO_SHA +#define OCSP_DIGEST_SIZE WC_SHA256_DIGEST_SIZE +#else +#define OCSP_DIGEST_SIZE WC_SHA_DIGEST_SIZE +#endif + +struct OcspEntry +{ + OcspEntry *next; /* next entry */ + word32 hashAlgoOID; /* hash algo ID */ + byte issuerHash[OCSP_DIGEST_SIZE]; /* issuer hash */ + byte issuerKeyHash[OCSP_DIGEST_SIZE]; /* issuer public key hash */ + CertStatus *status; /* OCSP response list */ + int totalStatus; /* number on list */ + byte* rawCertId; /* raw bytes of the CertID */ + int rawCertIdSize; /* num bytes in raw CertID */ + /* option bits - using 32-bit for alignment */ + word32 ownStatus:1; /* do we need to free the status + * response list */ + word32 isDynamic:1; /* was dynamically allocated */ + +}; + +/* TODO: Long-term, it would be helpful if we made this struct and other OCSP + structs conform to the ASN spec as described in RFC 6960. It will help + with readability and with implementing OpenSSL compatibility API + functions, because OpenSSL's OCSP data structures conform to the + RFC. */ struct OcspResponse { int responseStatus; /* return code from Responder */ @@ -1279,8 +1431,6 @@ struct OcspResponse { byte producedDate[MAX_DATE_SIZE]; /* Date at which this response was signed */ byte producedDateFormat; /* format of the producedDate */ - byte* issuerHash; - byte* issuerKeyHash; byte* cert; word32 certSz; @@ -1289,7 +1439,7 @@ struct OcspResponse { word32 sigSz; /* Length in octets for the sig */ word32 sigOID; /* OID for hash used for sig */ - CertStatus* status; /* certificate status to fill out */ + OcspEntry* single; /* chain of OCSP single responses */ byte* nonce; /* pointer to nonce inside ASN.1 response */ int nonceSz; /* length of the nonce string */ @@ -1300,6 +1450,7 @@ struct OcspResponse { #ifdef OPENSSL_EXTRA int verifyError; #endif + void* heap; }; @@ -1320,25 +1471,9 @@ struct OcspRequest { void* ssl; }; -typedef struct OcspEntry OcspEntry; - -#ifdef NO_SHA -#define OCSP_DIGEST_SIZE WC_SHA256_DIGEST_SIZE -#else -#define OCSP_DIGEST_SIZE WC_SHA_DIGEST_SIZE -#endif - -struct OcspEntry -{ - OcspEntry *next; /* next entry */ - byte issuerHash[OCSP_DIGEST_SIZE]; /* issuer hash */ - byte issuerKeyHash[OCSP_DIGEST_SIZE]; /* issuer public key hash */ - CertStatus *status; /* OCSP response list */ - int totalStatus; /* number on list */ -}; - -WOLFSSL_LOCAL void InitOcspResponse(OcspResponse*, CertStatus*, byte*, word32); -WOLFSSL_LOCAL int OcspResponseDecode(OcspResponse*, void*, void* heap, int); +WOLFSSL_LOCAL void InitOcspResponse(OcspResponse*, OcspEntry*, CertStatus*, byte*, word32, void*); +WOLFSSL_LOCAL void FreeOcspResponse(OcspResponse*); +WOLFSSL_LOCAL int OcspResponseDecode(OcspResponse*, void*, void* heap, int); WOLFSSL_LOCAL int InitOcspRequest(OcspRequest*, DecodedCert*, byte, void*); WOLFSSL_LOCAL void FreeOcspRequest(OcspRequest*); @@ -1416,12 +1551,13 @@ WOLFSSL_LOCAL void FreeDecodedCRL(DecodedCRL*); #endif enum PBESTypes { - PBE_MD5_DES = 0, - PBE_SHA1_RC4_128 = 1, - PBE_SHA1_DES = 2, - PBE_SHA1_DES3 = 3, - PBE_AES256_CBC = 4, - PBE_AES128_CBC = 5, + PBE_MD5_DES = 0, + PBE_SHA1_RC4_128 = 1, + PBE_SHA1_DES = 2, + PBE_SHA1_DES3 = 3, + PBE_AES256_CBC = 4, + PBE_AES128_CBC = 5, + PBE_SHA1_40RC2_CBC = 6, PBE_SHA1_RC4_128_SUM = 657, PBE_SHA1_DES3_SUM = 659, diff --git a/source/libwolfssl/wolfcrypt/asn_public.h b/source/libwolfssl/wolfcrypt/asn_public.h index 5caf1338..d85d6b07 100644 --- a/source/libwolfssl/wolfcrypt/asn_public.h +++ b/source/libwolfssl/wolfcrypt/asn_public.h @@ -1,6 +1,6 @@ /* asn_public.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -32,6 +32,7 @@ This library defines the interface APIs for X509 certificates. #define WOLF_CRYPT_ASN_PUBLIC_H #include +#include #ifdef __cplusplus extern "C" { @@ -58,6 +59,10 @@ This library defines the interface APIs for X509 certificates. typedef struct WC_RNG WC_RNG; #define WC_RNG_TYPE_DEFINED #endif +#ifndef WC_DH_TYPE_DEFINED + typedef struct DhKey DhKey; + #define WC_DH_TYPE_DEFINED +#endif enum Ecc_Sum { ECC_SECP112R1_OID = 182, @@ -126,6 +131,7 @@ enum CertType { /* Signature type, by OID sum */ enum Ctc_SigType { CTC_SHAwDSA = 517, + CTC_SHA256wDSA = 416, CTC_MD2wRSA = 646, CTC_MD5wRSA = 648, CTC_SHAwRSA = 649, @@ -138,6 +144,17 @@ enum Ctc_SigType { CTC_SHA384wECDSA = 525, CTC_SHA512wRSA = 657, CTC_SHA512wECDSA = 526, + + /* https://csrc.nist.gov/projects/computer-security-objects-register/algorithm-registration */ + CTC_SHA3_224wECDSA = 423, + CTC_SHA3_256wECDSA = 424, + CTC_SHA3_384wECDSA = 425, + CTC_SHA3_512wECDSA = 426, + CTC_SHA3_224wRSA = 427, + CTC_SHA3_256wRSA = 428, + CTC_SHA3_384wRSA = 429, + CTC_SHA3_512wRSA = 430, + CTC_ED25519 = 256, CTC_ED448 = 257 }; @@ -331,7 +348,8 @@ typedef struct Cert { char certPolicies[CTC_MAX_CERTPOL_NB][CTC_MAX_CERTPOL_SZ]; word16 certPoliciesNb; /* Number of Cert Policy */ #endif -#if defined(WOLFSSL_CERT_EXT) || defined(OPENSSL_EXTRA) +#if defined(WOLFSSL_CERT_EXT) || defined(OPENSSL_EXTRA) || \ + defined(WOLFSSL_CERT_REQ) byte issRaw[sizeof(CertName)]; /* raw issuer info */ byte sbjRaw[sizeof(CertName)]; /* raw subject info */ #endif @@ -467,7 +485,7 @@ WOLFSSL_API void wc_FreeDer(DerBuffer** pDer); #ifdef WOLFSSL_PEM_TO_DER WOLFSSL_API int wc_PemToDer(const unsigned char* buff, long longSz, int type, - DerBuffer** pDer, void* heap, EncryptedInfo* info, int* eccKey); + DerBuffer** pDer, void* heap, EncryptedInfo* info, int* keyFormat); WOLFSSL_API int wc_KeyPemToDer(const unsigned char*, int, unsigned char*, int, const char*); @@ -507,6 +525,20 @@ WOLFSSL_API void wc_FreeDer(DerBuffer** pDer); WOLFSSL_API int wc_RsaPublicKeyDerSize(RsaKey* key, int with_header); #endif +#ifndef NO_DSA + /* DSA parameter DER helper functions */ + WOLFSSL_API int wc_DsaParamsDecode(const byte* input, word32* inOutIdx, + DsaKey*, word32); + WOLFSSL_API int wc_DsaKeyToParamsDer(DsaKey* key, byte* output, word32 inLen); +#endif + +#if !defined(NO_DH) && defined(WOLFSSL_DH_EXTRA) +WOLFSSL_LOCAL int wc_DhKeyToDer(DhKey* key, byte* output, word32* outSz, int exportPriv); +WOLFSSL_API int wc_DhParamsToDer(DhKey* key, byte* out, word32* outSz); +WOLFSSL_API int wc_DhPubKeyToDer(DhKey* key, byte* out, word32* outSz); +WOLFSSL_API int wc_DhPrivKeyToDer(DhKey* key, byte* out, word32* outSz); +#endif + #ifdef HAVE_ECC /* private key helpers */ WOLFSSL_API int wc_EccPrivateKeyDecode(const byte*, word32*, @@ -514,8 +546,11 @@ WOLFSSL_API void wc_FreeDer(DerBuffer** pDer); WOLFSSL_API int wc_EccKeyToDer(ecc_key*, byte* output, word32 inLen); WOLFSSL_API int wc_EccPrivateKeyToDer(ecc_key* key, byte* output, word32 inLen); + WOLFSSL_API int wc_EccKeyDerSize(ecc_key*, int pub); WOLFSSL_API int wc_EccPrivateKeyToPKCS8(ecc_key* key, byte* output, word32* outLen); + WOLFSSL_API int wc_EccKeyToPKCS8(ecc_key* key, byte* output, + word32* outLen); /* public key helper */ WOLFSSL_API int wc_EccPublicKeyDecode(const byte*, word32*, @@ -527,17 +562,24 @@ WOLFSSL_API void wc_FreeDer(DerBuffer** pDer); #ifdef HAVE_ED25519 /* private key helpers */ +#ifdef HAVE_ED25519_KEY_IMPORT WOLFSSL_API int wc_Ed25519PrivateKeyDecode(const byte*, word32*, ed25519_key*, word32); +#endif + +#ifdef HAVE_ED25519_KEY_EXPORT WOLFSSL_API int wc_Ed25519KeyToDer(ed25519_key* key, byte* output, word32 inLen); WOLFSSL_API int wc_Ed25519PrivateKeyToDer(ed25519_key* key, byte* output, word32 inLen); +#endif /* public key helper */ WOLFSSL_API int wc_Ed25519PublicKeyDecode(const byte*, word32*, ed25519_key*, word32); - #if (defined(WOLFSSL_CERT_GEN) || defined(WOLFSSL_KEY_GEN)) + #if (defined(WOLFSSL_CERT_GEN) || defined(WOLFSSL_KEY_GEN)) && \ + defined(HAVE_ED25519_KEY_EXPORT) + WOLFSSL_API int wc_Ed25519PublicKeyToDer(ed25519_key*, byte* output, word32 inLen, int with_AlgCurve); #endif @@ -545,17 +587,23 @@ WOLFSSL_API void wc_FreeDer(DerBuffer** pDer); #ifdef HAVE_ED448 /* private key helpers */ +#ifdef HAVE_ED448_KEY_IMPORT WOLFSSL_API int wc_Ed448PrivateKeyDecode(const byte*, word32*, ed448_key*, word32); +#endif + +#ifdef HAVE_ED448_KEY_EXPORT WOLFSSL_API int wc_Ed448KeyToDer(ed448_key* key, byte* output, word32 inLen); WOLFSSL_API int wc_Ed448PrivateKeyToDer(ed448_key* key, byte* output, word32 inLen); +#endif /* public key helper */ WOLFSSL_API int wc_Ed448PublicKeyDecode(const byte*, word32*, ed448_key*, word32); - #if (defined(WOLFSSL_CERT_GEN) || defined(WOLFSSL_KEY_GEN)) + #if (defined(WOLFSSL_CERT_GEN) || defined(WOLFSSL_KEY_GEN)) && \ + defined(HAVE_ED448_KEY_EXPORT) WOLFSSL_API int wc_Ed448PublicKeyToDer(ed448_key*, byte* output, word32 inLen, int with_AlgCurve); #endif @@ -569,7 +617,13 @@ WOLFSSL_API int wc_GetCTC_HashOID(int type); WOLFSSL_API int wc_GetPkcs8TraditionalOffset(byte* input, word32* inOutIdx, word32 sz); WOLFSSL_API int wc_CreatePKCS8Key(byte* out, word32* outSz, - byte* key, word32 keySz, int algoID, const byte* curveOID, word32 oidSz); + byte* key, word32 keySz, int algoID, const byte* curveOID, + word32 oidSz); +WOLFSSL_API int wc_EncryptPKCS8Key(byte*, word32, byte*, word32*, const char*, + int, int, int, int, byte*, word32, int, WC_RNG*, void*); +WOLFSSL_API int wc_DecryptPKCS8Key(byte*, word32, const char*, int); +WOLFSSL_API int wc_CreateEncryptedPKCS8Key(byte*, word32, byte*, word32*, + const char*, int, int, int, int, byte*, word32, int, WC_RNG*, void*); #ifndef NO_ASN_TIME /* Time */ diff --git a/source/libwolfssl/wolfcrypt/blake2-impl.h b/source/libwolfssl/wolfcrypt/blake2-impl.h index 3be93e12..72d2a510 100644 --- a/source/libwolfssl/wolfcrypt/blake2-impl.h +++ b/source/libwolfssl/wolfcrypt/blake2-impl.h @@ -12,7 +12,7 @@ */ /* blake2-impl.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -36,7 +36,7 @@ #ifndef WOLFCRYPT_BLAKE2_IMPL_H #define WOLFCRYPT_BLAKE2_IMPL_H -#include +#include static WC_INLINE word32 load32( const void *src ) { @@ -85,7 +85,7 @@ static WC_INLINE void store32( void *dst, word32 w ) static WC_INLINE void store64( void *dst, word64 w ) { -#if defined(LITTLE_ENDIAN_ORDER) +#if defined(LITTLE_ENDIAN_ORDER) && !defined(WOLFSSL_GENERAL_ALIGNMENT) *( word64 * )( dst ) = w; #else byte *p = ( byte * )dst; diff --git a/source/libwolfssl/wolfcrypt/blake2-int.h b/source/libwolfssl/wolfcrypt/blake2-int.h index 1118c090..a995e260 100644 --- a/source/libwolfssl/wolfcrypt/blake2-int.h +++ b/source/libwolfssl/wolfcrypt/blake2-int.h @@ -12,7 +12,7 @@ */ /* blake2-int.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -37,7 +37,7 @@ #ifndef WOLFCRYPT_BLAKE2_INT_H #define WOLFCRYPT_BLAKE2_INT_H -#include +#include #if defined(__cplusplus) extern "C" { @@ -77,7 +77,7 @@ byte personal[BLAKE2S_PERSONALBYTES]; /* 32 */ } blake2s_param; - ALIGN32 typedef struct __blake2s_state + typedef struct ALIGN32 __blake2s_state { word32 h[8]; word32 t[2]; @@ -102,7 +102,7 @@ byte personal[BLAKE2B_PERSONALBYTES]; /* 64 */ } blake2b_param; - ALIGN64 typedef struct __blake2b_state + typedef struct ALIGN64 __blake2b_state { word64 h[8]; word64 t[2]; diff --git a/source/libwolfssl/wolfcrypt/blake2.h b/source/libwolfssl/wolfcrypt/blake2.h index 3c57852a..f937acc9 100644 --- a/source/libwolfssl/wolfcrypt/blake2.h +++ b/source/libwolfssl/wolfcrypt/blake2.h @@ -1,6 +1,6 @@ /* blake2.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -26,11 +26,11 @@ #ifndef WOLF_CRYPT_BLAKE2_H #define WOLF_CRYPT_BLAKE2_H -#include +#include #if defined(HAVE_BLAKE2) || defined(HAVE_BLAKE2S) -#include +#include /* call old functions if using fips for the sake of hmac @wc_fips */ #ifdef HAVE_FIPS diff --git a/source/libwolfssl/wolfcrypt/camellia.h b/source/libwolfssl/wolfcrypt/camellia.h index 445dde48..9b0c6cbe 100644 --- a/source/libwolfssl/wolfcrypt/camellia.h +++ b/source/libwolfssl/wolfcrypt/camellia.h @@ -27,7 +27,7 @@ /* camellia.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -54,7 +54,7 @@ #ifndef WOLF_CRYPT_CAMELLIA_H #define WOLF_CRYPT_CAMELLIA_H -#include +#include #ifdef HAVE_CAMELLIA diff --git a/source/libwolfssl/wolfcrypt/chacha.h b/source/libwolfssl/wolfcrypt/chacha.h index 40468e3c..b01feba2 100644 --- a/source/libwolfssl/wolfcrypt/chacha.h +++ b/source/libwolfssl/wolfcrypt/chacha.h @@ -1,6 +1,6 @@ /* chacha.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -32,7 +32,7 @@ This library contains implementation for the ChaCha20 stream cipher. #ifndef WOLF_CRYPT_CHACHA_H #define WOLF_CRYPT_CHACHA_H -#include +#include #ifdef HAVE_CHACHA @@ -55,6 +55,9 @@ Block counter is located at index 12. /* Size of IV in bytes*/ #define CHACHA_IV_BYTES 12 +#ifdef HAVE_XCHACHA +#define XCHACHA_NONCE_BYTES 24 +#endif /* Size of ChaCha chunks */ #define CHACHA_CHUNK_WORDS 16 @@ -92,8 +95,17 @@ WOLFSSL_API int wc_Chacha_SetIV(ChaCha* ctx, const byte* inIv, word32 counter); WOLFSSL_API int wc_Chacha_Process(ChaCha* ctx, byte* cipher, const byte* plain, word32 msglen); + +WOLFSSL_LOCAL void wc_Chacha_purge_current_block(ChaCha* ctx); + WOLFSSL_API int wc_Chacha_SetKey(ChaCha* ctx, const byte* key, word32 keySz); +#ifdef HAVE_XCHACHA +WOLFSSL_API int wc_XChacha_SetKey(ChaCha *ctx, const byte *key, word32 keySz, + const byte *nonce, word32 nonceSz, + word32 counter); +#endif + #ifdef __cplusplus } /* extern "C" */ #endif diff --git a/source/libwolfssl/wolfcrypt/chacha20_poly1305.h b/source/libwolfssl/wolfcrypt/chacha20_poly1305.h index d698300d..42a50eec 100644 --- a/source/libwolfssl/wolfcrypt/chacha20_poly1305.h +++ b/source/libwolfssl/wolfcrypt/chacha20_poly1305.h @@ -1,6 +1,6 @@ /* chacha20_poly1305.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -34,9 +34,9 @@ or Authenticated Encryption with Additional Data (AEAD) algorithm. #ifndef WOLF_CRYPT_CHACHA20_POLY1305_H #define WOLF_CRYPT_CHACHA20_POLY1305_H -#include -#include -#include +#include +#include +#include #if defined(HAVE_CHACHA) && defined(HAVE_POLY1305) @@ -48,6 +48,7 @@ or Authenticated Encryption with Additional Data (AEAD) algorithm. #define CHACHA20_POLY1305_AEAD_IV_SIZE 12 #define CHACHA20_POLY1305_AEAD_AUTHTAG_SIZE 16 #define CHACHA20_POLY1305_MAX 4294967295U +#define XCHACHA20_POLY1305_AEAD_NONCE_SIZE 24 enum { CHACHA20_POLY_1305_ENC_TYPE = 8, /* cipher unique type */ @@ -123,6 +124,30 @@ WOLFSSL_API int wc_ChaCha20Poly1305_UpdateData(ChaChaPoly_Aead* aead, WOLFSSL_API int wc_ChaCha20Poly1305_Final(ChaChaPoly_Aead* aead, byte outAuthTag[CHACHA20_POLY1305_AEAD_AUTHTAG_SIZE]); +#ifdef HAVE_XCHACHA + +WOLFSSL_API int wc_XChaCha20Poly1305_Init( + ChaChaPoly_Aead* aead, + const byte *ad, word32 ad_len, + const byte *inKey, word32 inKeySz, + const byte *inIV, word32 inIVSz, + int isEncrypt); + +WOLFSSL_API int wc_XChaCha20Poly1305_Encrypt( + byte *dst, const size_t dst_space, + const byte *src, const size_t src_len, + const byte *ad, const size_t ad_len, + const byte *nonce, const size_t nonce_len, + const byte *key, const size_t key_len); + +WOLFSSL_API int wc_XChaCha20Poly1305_Decrypt( + byte *dst, const size_t dst_space, + const byte *src, const size_t src_len, + const byte *ad, const size_t ad_len, + const byte *nonce, const size_t nonce_len, + const byte *key, const size_t key_len); + +#endif /* HAVE_XCHACHA */ #ifdef __cplusplus } /* extern "C" */ diff --git a/source/libwolfssl/wolfcrypt/cmac.h b/source/libwolfssl/wolfcrypt/cmac.h index f9936c0d..6fd46ffc 100644 --- a/source/libwolfssl/wolfcrypt/cmac.h +++ b/source/libwolfssl/wolfcrypt/cmac.h @@ -1,6 +1,6 @@ /* cmac.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -23,14 +23,14 @@ #ifndef WOLF_CRYPT_CMAC_H #define WOLF_CRYPT_CMAC_H -#include -#include +#include +#include #if !defined(NO_AES) && defined(WOLFSSL_CMAC) #if defined(HAVE_FIPS) && \ defined(HAVE_FIPS_VERSION) && (HAVE_FIPS_VERSION >= 2) - #include + #include #endif /* HAVE_FIPS_VERSION >= 2 */ #ifdef __cplusplus @@ -53,6 +53,16 @@ struct Cmac { byte k2[AES_BLOCK_SIZE]; word32 bufferSz; word32 totalSz; +#ifdef WOLF_CRYPTO_CB + int devId; + void* devCtx; + #ifdef WOLFSSL_QNX_CAAM + byte ctx[32]; /* hold state for save and return */ + word32 blackKey; + word32 keylen; + byte initialized; + #endif +#endif }; @@ -70,6 +80,12 @@ WOLFSSL_API int wc_InitCmac(Cmac* cmac, const byte* key, word32 keySz, int type, void* unused); + +WOLFSSL_API +int wc_InitCmac_ex(Cmac* cmac, + const byte* key, word32 keySz, + int type, void* unused, void* heap, int devId); + WOLFSSL_API int wc_CmacUpdate(Cmac* cmac, const byte* in, word32 inSz); diff --git a/source/libwolfssl/wolfcrypt/coding.h b/source/libwolfssl/wolfcrypt/coding.h index 886b5ba3..a5c2ba14 100644 --- a/source/libwolfssl/wolfcrypt/coding.h +++ b/source/libwolfssl/wolfcrypt/coding.h @@ -1,6 +1,6 @@ /* coding.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -26,7 +26,7 @@ #ifndef WOLF_CRYPT_CODING_H #define WOLF_CRYPT_CODING_H -#include +#include #ifdef __cplusplus extern "C" { @@ -79,6 +79,8 @@ WOLFSSL_API int Base64_Decode(const byte* in, word32 inLen, byte* out, int Base16_Encode(const byte* in, word32 inLen, byte* out, word32* outLen); #endif + WOLFSSL_LOCAL int Base64_SkipNewline(const byte* in, word32* inLen, + word32* outJ); #ifdef __cplusplus } /* extern "C" */ diff --git a/source/libwolfssl/wolfcrypt/compress.h b/source/libwolfssl/wolfcrypt/compress.h index 9695c729..8f3eb737 100644 --- a/source/libwolfssl/wolfcrypt/compress.h +++ b/source/libwolfssl/wolfcrypt/compress.h @@ -1,6 +1,6 @@ /* compress.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -27,7 +27,7 @@ #ifndef WOLF_CRYPT_COMPRESS_H #define WOLF_CRYPT_COMPRESS_H -#include +#include #ifdef HAVE_LIBZ @@ -47,6 +47,8 @@ WOLFSSL_API int wc_Compress_ex(byte* out, word32 outSz, const byte* in, WOLFSSL_API int wc_DeCompress(byte*, word32, const byte*, word32); WOLFSSL_API int wc_DeCompress_ex(byte* out, word32 outSz, const byte* in, word32 inSz, int windowBits); +WOLFSSL_API int wc_DeCompressDynamic(byte** out, int max, int memoryType, + const byte* in, word32 inSz, int windowBits, void* heap); #ifdef __cplusplus } /* extern "C" */ diff --git a/source/libwolfssl/wolfcrypt/cpuid.h b/source/libwolfssl/wolfcrypt/cpuid.h index 08e39483..4eadb638 100644 --- a/source/libwolfssl/wolfcrypt/cpuid.h +++ b/source/libwolfssl/wolfcrypt/cpuid.h @@ -1,6 +1,6 @@ /* cpuid.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -25,15 +25,17 @@ #define WOLF_CRYPT_CPUID_H -#include +#include #ifdef __cplusplus extern "C" { #endif -#if defined(WOLFSSL_X86_64_BUILD) || defined(USE_INTEL_SPEEDUP) || \ - defined(WOLFSSL_AESNI) +#if (defined(WOLFSSL_X86_64_BUILD) || defined(USE_INTEL_SPEEDUP) || \ + defined(WOLFSSL_AESNI) || defined(WOLFSSL_SP_X86_64_ASM)) && \ + !defined(WOLFSSL_NO_ASM) + #define CPUID_AVX1 0x0001 #define CPUID_AVX2 0x0002 #define CPUID_RDRAND 0x0004 @@ -59,6 +61,7 @@ WOLFSSL_API void cpuid_select_flags(word32 flags); WOLFSSL_API void cpuid_set_flag(word32 flag); WOLFSSL_API void cpuid_clear_flag(word32 flag); + #endif #ifdef __cplusplus diff --git a/source/libwolfssl/wolfcrypt/cryptocb.h b/source/libwolfssl/wolfcrypt/cryptocb.h index 04f4160a..249f2c11 100644 --- a/source/libwolfssl/wolfcrypt/cryptocb.h +++ b/source/libwolfssl/wolfcrypt/cryptocb.h @@ -1,6 +1,6 @@ /* cryptocb.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -15,13 +15,14 @@ * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License - * along with this program. If not, see . + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA */ #ifndef _WOLF_CRYPTO_CB_H_ #define _WOLF_CRYPTO_CB_H_ -#include +#include #ifdef __cplusplus extern "C" { @@ -35,30 +36,41 @@ #ifdef WOLF_CRYPTO_CB #ifndef NO_RSA - #include + #include #endif #ifdef HAVE_ECC - #include + #include #endif #ifndef NO_AES - #include + #include #endif #ifndef NO_SHA - #include + #include #endif #ifndef NO_SHA256 - #include + #include #endif #ifndef NO_HMAC - #include + #include #endif #ifndef WC_NO_RNG - #include + #include #endif #ifndef NO_DES3 - #include + #include +#endif +#ifdef WOLFSSL_CMAC + #include +#endif +#ifdef HAVE_ED25519 + #include +#endif +#ifdef HAVE_CURVE25519 + #include +#endif +#if defined(WOLFSSL_SHA512) || defined(WOLFSSL_SHA384) + #include #endif - /* Crypto Information Structure for callbacks */ typedef struct wc_CryptoInfo { @@ -85,6 +97,11 @@ typedef struct wc_CryptoInfo { WC_RNG* rng; } rsakg; #endif + struct { + RsaKey* key; + const byte* pubKey; + word32 pubKeySz; + } rsa_check; #endif #ifdef HAVE_ECC struct { @@ -115,6 +132,55 @@ typedef struct wc_CryptoInfo { int* res; ecc_key* key; } eccverify; + struct { + ecc_key* key; + const byte* pubKey; + word32 pubKeySz; + } ecc_check; + #endif + #ifdef HAVE_CURVE25519 + struct { + WC_RNG* rng; + int size; + curve25519_key* key; + int curveId; + } curve25519kg; + struct { + curve25519_key* private_key; + curve25519_key* public_key; + byte* out; + word32* outlen; + int endian; + } curve25519; + #endif + #ifdef HAVE_ED25519 + struct { + WC_RNG* rng; + int size; + ed25519_key* key; + int curveId; + } ed25519kg; + struct { + const byte* in; + word32 inLen; + byte* out; + word32* outLen; + ed25519_key* key; + byte type; + const byte* context; + byte contextLen; + } ed25519sign; + struct { + const byte* sig; + word32 sigLen; + const byte* msg; + word32 msgLen; + int* res; + ed25519_key* key; + byte type; + const byte* context; + byte contextLen; + } ed25519verify; #endif }; } pk; @@ -169,7 +235,8 @@ typedef struct wc_CryptoInfo { }; } cipher; #endif /* !NO_AES || !NO_DES3 */ -#if !defined(NO_SHA) || !defined(NO_SHA256) +#if !defined(NO_SHA) || !defined(NO_SHA256) || \ + defined(WOLFSSL_SHA512) || defined(WOLFSSL_SHA384) struct { int type; /* enum wc_HashType */ const byte* in; @@ -182,6 +249,12 @@ typedef struct wc_CryptoInfo { #ifndef NO_SHA256 wc_Sha256* sha256; #endif + #ifdef WOLFSSL_SHA384 + wc_Sha384* sha384; + #endif + #ifdef WOLFSSL_SHA512 + wc_Sha512* sha512; + #endif }; } hash; #endif /* !NO_SHA || !NO_SHA256 */ @@ -206,13 +279,26 @@ typedef struct wc_CryptoInfo { word32 sz; } seed; #endif +#ifdef WOLFSSL_CMAC + struct { + Cmac* cmac; + void* ctx; + const byte* key; + const byte* in; + byte* out; + word32* outSz; + word32 keySz; + word32 inSz; + int type; + } cmac; +#endif } wc_CryptoInfo; typedef int (*CryptoDevCallbackFunc)(int devId, wc_CryptoInfo* info, void* ctx); WOLFSSL_LOCAL void wc_CryptoCb_Init(void); - +WOLFSSL_LOCAL int wc_CryptoCb_GetDevIdAtIndex(int startIdx); WOLFSSL_API int wc_CryptoCb_RegisterDevice(int devId, CryptoDevCallbackFunc cb, void* ctx); WOLFSSL_API void wc_CryptoCb_UnRegisterDevice(int devId); @@ -229,6 +315,9 @@ WOLFSSL_LOCAL int wc_CryptoCb_Rsa(const byte* in, word32 inLen, byte* out, WOLFSSL_LOCAL int wc_CryptoCb_MakeRsaKey(RsaKey* key, int size, long e, WC_RNG* rng); #endif /* WOLFSSL_KEY_GEN */ + +WOLFSSL_LOCAL int wc_CryptoCb_RsaCheckPrivKey(RsaKey* key, const byte* pubKey, + word32 pubKeySz); #endif /* !NO_RSA */ #ifdef HAVE_ECC @@ -243,8 +332,30 @@ WOLFSSL_LOCAL int wc_CryptoCb_EccSign(const byte* in, word32 inlen, byte* out, WOLFSSL_LOCAL int wc_CryptoCb_EccVerify(const byte* sig, word32 siglen, const byte* hash, word32 hashlen, int* res, ecc_key* key); + +WOLFSSL_LOCAL int wc_CryptoCb_EccCheckPrivKey(ecc_key* key, const byte* pubKey, + word32 pubKeySz); #endif /* HAVE_ECC */ +#ifdef HAVE_CURVE25519 +WOLFSSL_LOCAL int wc_CryptoCb_Curve25519Gen(WC_RNG* rng, int keySize, + curve25519_key* key); + +WOLFSSL_LOCAL int wc_CryptoCb_Curve25519(curve25519_key* private_key, + curve25519_key* public_key, byte* out, word32* outlen, int endian); +#endif /* HAVE_CURVE25519 */ + +#ifdef HAVE_ED25519 +WOLFSSL_LOCAL int wc_CryptoCb_Ed25519Gen(WC_RNG* rng, int keySize, + ed25519_key* key); +WOLFSSL_LOCAL int wc_CryptoCb_Ed25519Sign(const byte* in, word32 inLen, + byte* out, word32 *outLen, ed25519_key* key, byte type, const byte* context, + byte contextLen); +WOLFSSL_LOCAL int wc_CryptoCb_Ed25519Verify(const byte* sig, word32 sigLen, + const byte* msg, word32 msgLen, int* res, ed25519_key* key, byte type, + const byte* context, byte contextLen); +#endif /* HAVE_ED25519 */ + #ifndef NO_AES #ifdef HAVE_AESGCM WOLFSSL_LOCAL int wc_CryptoCb_AesGcmEncrypt(Aes* aes, byte* out, @@ -280,6 +391,15 @@ WOLFSSL_LOCAL int wc_CryptoCb_ShaHash(wc_Sha* sha, const byte* in, WOLFSSL_LOCAL int wc_CryptoCb_Sha256Hash(wc_Sha256* sha256, const byte* in, word32 inSz, byte* digest); #endif /* !NO_SHA256 */ +#ifdef WOLFSSL_SHA384 +WOLFSSL_LOCAL int wc_CryptoCb_Sha384Hash(wc_Sha384* sha384, const byte* in, + word32 inSz, byte* digest); +#endif +#ifdef WOLFSSL_SHA512 +WOLFSSL_LOCAL int wc_CryptoCb_Sha512Hash(wc_Sha512* sha512, const byte* in, + word32 inSz, byte* digest); +#endif + #ifndef NO_HMAC WOLFSSL_LOCAL int wc_CryptoCb_Hmac(Hmac* hmac, int macType, const byte* in, word32 inSz, byte* digest); @@ -290,6 +410,12 @@ WOLFSSL_LOCAL int wc_CryptoCb_RandomBlock(WC_RNG* rng, byte* out, word32 sz); WOLFSSL_LOCAL int wc_CryptoCb_RandomSeed(OS_Seed* os, byte* seed, word32 sz); #endif +#ifdef WOLFSSL_CMAC +WOLFSSL_LOCAL int wc_CryptoCb_Cmac(Cmac* cmac, const byte* key, word32 keySz, + const byte* in, word32 inSz, byte* out, word32* outSz, int type, + void* ctx); +#endif + #endif /* WOLF_CRYPTO_CB */ #ifdef __cplusplus diff --git a/source/libwolfssl/wolfcrypt/curve25519.h b/source/libwolfssl/wolfcrypt/curve25519.h index 08dee992..2193f23a 100644 --- a/source/libwolfssl/wolfcrypt/curve25519.h +++ b/source/libwolfssl/wolfcrypt/curve25519.h @@ -1,6 +1,6 @@ /* curve25519.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -27,15 +27,15 @@ #ifndef WOLF_CRYPT_CURVE25519_H #define WOLF_CRYPT_CURVE25519_H -#include +#include #ifdef HAVE_CURVE25519 -#include -#include +#include +#include #ifdef WOLFSSL_ASYNC_CRYPT - #include + #include #endif #ifdef __cplusplus @@ -79,6 +79,9 @@ typedef struct curve25519_key { #ifdef WOLFSSL_ASYNC_CRYPT WC_ASYNC_DEV asyncDev; #endif +#if defined(WOLF_CRYPTO_CB) + int devId; +#endif } curve25519_key; enum { @@ -113,6 +116,8 @@ int wc_curve25519_shared_secret_ex(curve25519_key* private_key, WOLFSSL_API int wc_curve25519_init(curve25519_key* key); +WOLFSSL_API +int wc_curve25519_init_ex(curve25519_key* key, void* heap, int devId); WOLFSSL_API void wc_curve25519_free(curve25519_key* key); diff --git a/source/libwolfssl/wolfcrypt/curve448.h b/source/libwolfssl/wolfcrypt/curve448.h index 7455ee0e..55e1ae1b 100644 --- a/source/libwolfssl/wolfcrypt/curve448.h +++ b/source/libwolfssl/wolfcrypt/curve448.h @@ -1,6 +1,6 @@ /* curve448.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -25,15 +25,15 @@ #ifndef WOLF_CRYPT_CURVE448_H #define WOLF_CRYPT_CURVE448_H -#include +#include #ifdef HAVE_CURVE448 -#include -#include +#include +#include #ifdef WOLFSSL_ASYNC_CRYPT - #include + #include #endif #ifdef __cplusplus diff --git a/source/libwolfssl/wolfcrypt/des3.h b/source/libwolfssl/wolfcrypt/des3.h index 6b4ac501..438e72cf 100644 --- a/source/libwolfssl/wolfcrypt/des3.h +++ b/source/libwolfssl/wolfcrypt/des3.h @@ -1,6 +1,6 @@ /* des3.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -26,13 +26,13 @@ #ifndef WOLF_CRYPT_DES3_H #define WOLF_CRYPT_DES3_H -#include +#include #ifndef NO_DES3 #if defined(HAVE_FIPS) && \ defined(HAVE_FIPS_VERSION) && (HAVE_FIPS_VERSION >= 2) - #include + #include #endif /* HAVE_FIPS_VERSION >= 2 */ #if defined(HAVE_FIPS) && \ @@ -58,7 +58,7 @@ enum { (defined(HAVE_FIPS_VERSION) && (HAVE_FIPS_VERSION >= 2)) #ifdef WOLFSSL_ASYNC_CRYPT - #include + #include #endif enum { diff --git a/source/libwolfssl/wolfcrypt/dh.h b/source/libwolfssl/wolfcrypt/dh.h index 38300c75..d41f125b 100644 --- a/source/libwolfssl/wolfcrypt/dh.h +++ b/source/libwolfssl/wolfcrypt/dh.h @@ -1,6 +1,6 @@ /* dh.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -26,31 +26,24 @@ #ifndef WOLF_CRYPT_DH_H #define WOLF_CRYPT_DH_H -#include +#include #ifndef NO_DH #if defined(HAVE_FIPS) && \ defined(HAVE_FIPS_VERSION) && (HAVE_FIPS_VERSION >= 2) - #include + #include #endif /* HAVE_FIPS_VERSION >= 2 */ -#include -#include +#include +#include #ifdef __cplusplus extern "C" { #endif #ifdef WOLFSSL_ASYNC_CRYPT - #include -#endif - -/* Optional support extended DH public / private keys */ -#if !defined(WOLFSSL_DH_EXTRA) && (defined(WOLFSSL_QT) || \ - defined(OPENSSL_ALL) || defined(WOLFSSL_OPENSSH) || \ - defined(WOLFSSL_STATIC_EPHEMERAL)) - #define WOLFSSL_DH_EXTRA + #include #endif typedef struct DhParams { @@ -117,12 +110,14 @@ WOLFSSL_API int wc_DhSetKey_ex(DhKey* key, const byte* p, word32 pSz, const byte* g, word32 gSz, const byte* q, word32 qSz); #ifdef WOLFSSL_DH_EXTRA +WOLFSSL_API int wc_DhPublicKeyDecode(const byte* input, word32* inOutIdx, + DhKey* key, word32 inSz); WOLFSSL_API int wc_DhImportKeyPair(DhKey* key, const byte* priv, word32 privSz, const byte* pub, word32 pubSz); WOLFSSL_API int wc_DhExportKeyPair(DhKey* key, byte* priv, word32* pPrivSz, byte* pub, word32* pPubSz); -#endif /* WOLFSSL_DH_EXTRA */ - +WOLFSSL_LOCAL int wc_DhKeyCopy(DhKey* src, DhKey* dst); +#endif WOLFSSL_API int wc_DhSetCheckKey(DhKey* key, const byte* p, word32 pSz, const byte* g, word32 gSz, const byte* q, word32 qSz, int trusted, WC_RNG* rng); diff --git a/source/libwolfssl/wolfcrypt/dsa.h b/source/libwolfssl/wolfcrypt/dsa.h index 868a4871..0a11642d 100644 --- a/source/libwolfssl/wolfcrypt/dsa.h +++ b/source/libwolfssl/wolfcrypt/dsa.h @@ -1,6 +1,6 @@ /* dsa.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -53,8 +53,20 @@ enum { }; enum { - DSA_HALF_SIZE = 20, /* r and s size */ - DSA_SIG_SIZE = 40 /* signature size */ + /* 160 bit q length */ + DSA_160_HALF_SIZE = 20, /* r and s size */ + DSA_160_SIG_SIZE = 40, /* signature size */ + DSA_HALF_SIZE = DSA_160_HALF_SIZE, /* kept for compatiblity */ + DSA_SIG_SIZE = DSA_160_SIG_SIZE, /* kept for compatiblity */ + /* 256 bit q length */ + DSA_256_HALF_SIZE = 32, /* r and s size */ + DSA_256_SIG_SIZE = 64, /* signature size */ + + DSA_MIN_HALF_SIZE = DSA_160_HALF_SIZE, + DSA_MIN_SIG_SIZE = DSA_160_SIG_SIZE, + + DSA_MAX_HALF_SIZE = DSA_256_HALF_SIZE, + DSA_MAX_SIG_SIZE = DSA_256_SIG_SIZE, }; /* DSA */ diff --git a/source/libwolfssl/wolfcrypt/ecc.h b/source/libwolfssl/wolfcrypt/ecc.h index 9ed42d76..a969d5cc 100644 --- a/source/libwolfssl/wolfcrypt/ecc.h +++ b/source/libwolfssl/wolfcrypt/ecc.h @@ -1,6 +1,6 @@ /* ecc.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -27,39 +27,43 @@ #ifndef WOLF_CRYPT_ECC_H #define WOLF_CRYPT_ECC_H -#include +#include #ifdef HAVE_ECC #if defined(HAVE_FIPS) && \ defined(HAVE_FIPS_VERSION) && (HAVE_FIPS_VERSION >= 2) - #include + #include #endif /* HAVE_FIPS_VERSION >= 2 */ -#include -#include +#include +#include #ifdef HAVE_X963_KDF - #include + #include #endif #ifdef WOLFSSL_ASYNC_CRYPT - #include + #include #ifdef WOLFSSL_CERT_GEN - #include + #include #endif #endif #if defined(WOLFSSL_ATECC508A) || defined(WOLFSSL_ATECC608A) - #include + #include #endif /* WOLFSSL_ATECC508A */ #if defined(WOLFSSL_CRYPTOCELL) - #include + #include +#endif + +#ifdef WOLFSSL_SILABS_SE_ACCEL + #include #endif #ifdef WOLFSSL_HAVE_SP_ECC - #include + #include #endif @@ -81,30 +85,41 @@ /* Determine max ECC bits based on enabled curves */ -#if defined(HAVE_ECC521) || defined(HAVE_ALL_CURVES) - #define MAX_ECC_BITS 521 +#if defined(WOLFCRYPT_HAVE_SAKKE) + #define MAX_ECC_BITS_NEEDED 1024 +#elif defined(HAVE_ECC521) || defined(HAVE_ALL_CURVES) + #define MAX_ECC_BITS_NEEDED 521 #elif defined(HAVE_ECC512) - #define MAX_ECC_BITS 512 + #define MAX_ECC_BITS_NEEDED 512 #elif defined(HAVE_ECC384) - #define MAX_ECC_BITS 384 + #define MAX_ECC_BITS_NEEDED 384 #elif defined(HAVE_ECC320) - #define MAX_ECC_BITS 320 + #define MAX_ECC_BITS_NEEDED 320 #elif !defined(NO_ECC256) - #define MAX_ECC_BITS 256 + #define MAX_ECC_BITS_NEEDED 256 #elif defined(HAVE_ECC239) - #define MAX_ECC_BITS 239 + #define MAX_ECC_BITS_NEEDED 239 #elif defined(HAVE_ECC224) - #define MAX_ECC_BITS 224 + #define MAX_ECC_BITS_NEEDED 224 #elif defined(HAVE_ECC192) - #define MAX_ECC_BITS 192 + #define MAX_ECC_BITS_NEEDED 192 #elif defined(HAVE_ECC160) - #define MAX_ECC_BITS 160 + #define MAX_ECC_BITS_NEEDED 160 #elif defined(HAVE_ECC128) - #define MAX_ECC_BITS 128 + #define MAX_ECC_BITS_NEEDED 128 #elif defined(HAVE_ECC112) - #define MAX_ECC_BITS 112 + #define MAX_ECC_BITS_NEEDED 112 #endif +#ifndef MAX_ECC_BITS + #define MAX_ECC_BITS MAX_ECC_BITS_NEEDED +#else + #if MAX_ECC_BITS_NEEDED > MAX_ECC_BITS + #error configured MAX_ECC_BITS is less than required by enabled curves. + #endif +#endif + + /* calculate max ECC bytes */ #if ((MAX_ECC_BITS * 2) % 8) == 0 #define MAX_ECC_BYTES (MAX_ECC_BITS / 8) @@ -124,10 +139,15 @@ enum { ECC_PRIVATEKEY_ONLY = 3, ECC_MAXNAME = 16, /* MAX CURVE NAME LENGTH */ SIG_HEADER_SZ = 7, /* ECC signature header size (30 81 87 02 42 [R] 02 42 [S]) */ - ECC_BUFSIZE = 256, /* for exported keys temp buffer */ - ECC_MINSIZE = 20, /* MIN Private Key size */ + ECC_BUFSIZE = 257, /* for exported keys temp buffer */ + ECC_MINSIZE = ECC_MIN_KEY_SZ/8, /* MIN Private Key size */ +#ifdef WOLFCRYPT_HAVE_SAKKE + ECC_MAXSIZE = 128, /* MAX Private Key size */ + ECC_MAXSIZE_GEN = 128, /* MAX Buffer size required when generating ECC keys*/ +#else ECC_MAXSIZE = 66, /* MAX Private Key size */ ECC_MAXSIZE_GEN = 74, /* MAX Buffer size required when generating ECC keys*/ +#endif ECC_MAX_OID_LEN = 16, ECC_MAX_SIG_SIZE= ((MAX_ECC_BYTES * 2) + ECC_MAX_PAD_SZ + SIG_HEADER_SZ), @@ -137,6 +157,8 @@ enum { ECC_MAX_CRYPTO_HW_PUBKEY_SIZE = (ATECC_KEY_SIZE*2), #elif defined(PLUTON_CRYPTO_ECC) ECC_MAX_CRYPTO_HW_SIZE = 32, +#elif defined(WOLFSSL_SILABS_SE_ACCEL) + ECC_MAX_CRYPTO_HW_SIZE = 32, #elif defined(WOLFSSL_CRYPTOCELL) #ifndef CRYPTOCELL_KEY_SIZE CRYPTOCELL_KEY_SIZE = ECC_MAXSIZE, @@ -152,8 +174,9 @@ enum { /* Shamir's dual add constants */ SHAMIR_PRECOMP_SZ = 16, -#ifdef HAVE_PKCS11 +#ifdef WOLF_CRYPTO_CB ECC_MAX_ID_LEN = 32, + ECC_MAX_LABEL_LEN = 32, #endif }; @@ -205,9 +228,14 @@ typedef enum ecc_curve_id { ECC_X448, #endif +#ifdef WOLFCRYPT_HAVE_SAKKE + ECC_SAKKE_1, +#endif + #ifdef WOLFSSL_CUSTOM_CURVES ECC_CURVE_CUSTOM, #endif + ECC_CURVE_MAX } ecc_curve_id; #ifdef HAVE_OID_ENCODING @@ -297,6 +325,9 @@ typedef struct ecc_set_type { #ifndef USE_FAST_MATH #error USE_FAST_MATH must be defined to use ALT_ECC_SIZE #endif +#ifdef WOLFSSL_NO_MALLOC + #error ALT_ECC_SIZE cannot be used with no malloc (WOLFSSL_NO_MALLOC) +#endif /* determine max bits required for ECC math */ #ifndef FP_MAX_BITS_ECC @@ -315,7 +346,8 @@ typedef struct ecc_set_type { #endif /* determine buffer size */ -#define FP_SIZE_ECC (FP_MAX_BITS_ECC/DIGIT_BIT) +/* Add one to accommodate extra digit used by sp_mul(), sp_mulmod(), sp_sqr(), and sp_sqrmod(). */ +#define FP_SIZE_ECC ((FP_MAX_BITS_ECC/DIGIT_BIT) + 1) /* This needs to match the size of the fp_int struct, except the @@ -388,6 +420,12 @@ struct ecc_key { void* heap; /* heap hint */ ecc_point pubkey; /* public key */ mp_int k; /* private key */ + +#ifdef WOLFSSL_QNX_CAAM + word32 blackKey; /* address of key encrypted and in secure memory */ + word32 securePubKey; /* address of public key in secure memory */ + int partNum; /* partition number*/ +#endif #if defined(WOLFSSL_ATECC508A) || defined(WOLFSSL_ATECC608A) int slot; /* Key Slot Number (-1 unknown) */ byte pubkey_raw[ECC_MAX_CRYPTO_HW_PUBKEY_SIZE]; @@ -395,6 +433,16 @@ struct ecc_key { #if defined(PLUTON_CRYPTO_ECC) || defined(WOLF_CRYPTO_CB) int devId; #endif +#ifdef WOLFSSL_SILABS_SE_ACCEL + sl_se_command_context_t cmd_ctx; + sl_se_key_descriptor_t key; + /* Used for SiLabs "plaintext" with public X, public Y, and + * private D concatenated. These are respectively at offset `0`, + * offset `keysize`, and offset `2 * keysize`. + */ + byte key_raw[3 * ECC_MAX_CRYPTO_HW_SIZE]; +#endif + #ifdef WOLFSSL_ASYNC_CRYPT mp_int* r; /* sign/verify temps */ mp_int* s; @@ -407,17 +455,23 @@ struct ecc_key { CertSignCtx certSignCtx; /* context info for cert sign (MakeSignature) */ #endif #endif /* WOLFSSL_ASYNC_CRYPT */ -#ifdef HAVE_PKCS11 +#ifdef WOLF_CRYPTO_CB byte id[ECC_MAX_ID_LEN]; int idLen; + char label[ECC_MAX_LABEL_LEN]; + int labelLen; #endif #if defined(WOLFSSL_CRYPTOCELL) ecc_context_t ctx; #endif -#ifdef WOLFSSL_ECDSA_SET_K +#if defined(WOLFSSL_ECDSA_SET_K) || defined(WOLFSSL_ECDSA_SET_K_ONE_LOOP) || \ + defined(WOLFSSL_ECDSA_DETERMINISTIC_K) mp_int *sign_k; #endif +#if defined(WOLFSSL_ECDSA_DETERMINISTIC_K) + byte deterministic:1; +#endif #ifdef WOLFSSL_SMALL_STACK_CACHE mp_int* t1; @@ -452,8 +506,6 @@ extern const size_t ecc_sets_count; WOLFSSL_API const char* wc_ecc_get_name(int curve_id); -#if !defined(WOLFSSL_ATECC508A) && !defined(WOLFSSL_ATECC608A) - #ifdef WOLFSSL_PUBLIC_ECC_ADD_DBL #define ECC_API WOLFSSL_API #else @@ -474,8 +526,9 @@ ECC_API int ecc_projective_dbl_point(ecc_point* P, ecc_point* R, mp_int* a, WOLFSSL_LOCAL int ecc_projective_add_point_safe(ecc_point* A, ecc_point* B, ecc_point* R, mp_int* a, mp_int* modulus, mp_digit mp, int* infinity); - -#endif +WOLFSSL_LOCAL +int ecc_projective_dbl_point_safe(ecc_point* P, ecc_point* R, mp_int* a, + mp_int* modulus, mp_digit mp); WOLFSSL_API int wc_ecc_make_key(WC_RNG* rng, int keysize, ecc_key* key); @@ -522,7 +575,15 @@ int wc_ecc_sign_hash(const byte* in, word32 inlen, byte* out, word32 *outlen, WOLFSSL_API int wc_ecc_sign_hash_ex(const byte* in, word32 inlen, WC_RNG* rng, ecc_key* key, mp_int *r, mp_int *s); -#ifdef WOLFSSL_ECDSA_SET_K +#ifdef WOLFSSL_ECDSA_DETERMINISTIC_K +WOLFSSL_API +int wc_ecc_set_deterministic(ecc_key* key, byte flag); +WOLFSSL_API +int wc_ecc_gen_deterministic_k(const byte* hash, word32 hashSz, + enum wc_HashType hashType, mp_int* priv, mp_int* k, mp_int* order, + void* heap); +#endif +#if defined(WOLFSSL_ECDSA_SET_K) || defined(WOLFSSL_ECDSA_SET_K_ONE_LOOP) WOLFSSL_API int wc_ecc_sign_set_k(const byte* k, word32 klen, ecc_key* key); #endif @@ -541,10 +602,12 @@ WOLFSSL_API int wc_ecc_init(ecc_key* key); WOLFSSL_ABI WOLFSSL_API int wc_ecc_init_ex(ecc_key* key, void* heap, int devId); -#ifdef HAVE_PKCS11 +#ifdef WOLF_CRYPTO_CB WOLFSSL_API int wc_ecc_init_id(ecc_key* key, unsigned char* id, int len, void* heap, int devId); +WOLFSSL_API +int wc_ecc_init_label(ecc_key* key, const char* label, void* heap, int devId); #endif #ifdef WOLFSSL_CUSTOM_CURVES WOLFSSL_LOCAL @@ -604,7 +667,9 @@ void wc_ecc_del_point(ecc_point* p); WOLFSSL_API void wc_ecc_del_point_h(ecc_point* p, void* h); WOLFSSL_API -int wc_ecc_copy_point(ecc_point* p, ecc_point *r); +void wc_ecc_forcezero_point(ecc_point* p); +WOLFSSL_API +int wc_ecc_copy_point(const ecc_point* p, ecc_point *r); WOLFSSL_API int wc_ecc_cmp_point(ecc_point* a, ecc_point *b); WOLFSSL_API @@ -614,13 +679,13 @@ int wc_ecc_point_is_on_curve(ecc_point *p, int curve_idx); #if !defined(WOLFSSL_ATECC508A) && !defined(WOLFSSL_ATECC608A) WOLFSSL_API -int wc_ecc_mulmod(mp_int* k, ecc_point *G, ecc_point *R, +int wc_ecc_mulmod(const mp_int* k, ecc_point *G, ecc_point *R, mp_int* a, mp_int* modulus, int map); WOLFSSL_LOCAL -int wc_ecc_mulmod_ex(mp_int* k, ecc_point *G, ecc_point *R, +int wc_ecc_mulmod_ex(const mp_int* k, ecc_point *G, ecc_point *R, mp_int* a, mp_int* modulus, int map, void* heap); WOLFSSL_LOCAL -int wc_ecc_mulmod_ex2(mp_int* k, ecc_point *G, ecc_point *R, mp_int* a, +int wc_ecc_mulmod_ex2(const mp_int* k, ecc_point *G, ecc_point *R, mp_int* a, mp_int* modulus, mp_int* order, WC_RNG* rng, int map, void* heap); #endif /* !WOLFSSL_ATECC508A */ @@ -662,8 +727,8 @@ WOLFSSL_API int wc_ecc_import_raw_ex(ecc_key* key, const char* qx, const char* qy, const char* d, int curve_id); WOLFSSL_API -int wc_ecc_import_unsigned(ecc_key* key, byte* qx, byte* qy, - byte* d, int curve_id); +int wc_ecc_import_unsigned(ecc_key* key, const byte* qx, const byte* qy, + const byte* d, int curve_id); #endif /* HAVE_ECC_KEY_IMPORT */ #ifdef HAVE_ECC_KEY_EXPORT @@ -696,10 +761,11 @@ int wc_ecc_export_point_der_compressed(const int curve_idx, ecc_point* point, #ifdef HAVE_ECC_KEY_IMPORT WOLFSSL_API -int wc_ecc_import_point_der_ex(byte* in, word32 inLen, const int curve_idx, - ecc_point* point, int shortKeySize); +int wc_ecc_import_point_der_ex(const byte* in, word32 inLen, + const int curve_idx, ecc_point* point, + int shortKeySize); WOLFSSL_API -int wc_ecc_import_point_der(byte* in, word32 inLen, const int curve_idx, +int wc_ecc_import_point_der(const byte* in, word32 inLen, const int curve_idx, ecc_point* point); #endif /* HAVE_ECC_KEY_IMPORT */ @@ -709,7 +775,7 @@ int wc_ecc_size(ecc_key* key); WOLFSSL_API int wc_ecc_sig_size_calc(int sz); WOLFSSL_API -int wc_ecc_sig_size(ecc_key* key); +int wc_ecc_sig_size(const ecc_key* key); WOLFSSL_API int wc_ecc_get_oid(word32 oidSum, const byte** oid, word32* oidSz); @@ -742,6 +808,7 @@ enum { KEY_SIZE_256 = 32, IV_SIZE_64 = 8, IV_SIZE_128 = 16, + ECC_MAX_IV_SIZE = 16, EXCHANGE_SALT_SZ = 16, EXCHANGE_INFO_SZ = 23 }; diff --git a/source/libwolfssl/wolfcrypt/ed25519.h b/source/libwolfssl/wolfcrypt/ed25519.h index d16e1c89..6a41e6fd 100644 --- a/source/libwolfssl/wolfcrypt/ed25519.h +++ b/source/libwolfssl/wolfcrypt/ed25519.h @@ -1,6 +1,6 @@ /* ed25519.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -27,17 +27,20 @@ #ifndef WOLF_CRYPT_ED25519_H #define WOLF_CRYPT_ED25519_H -#include +#include #ifdef HAVE_ED25519 -#include -#include -#include -#include +#include +#include +#include +#ifndef WOLFSSL_SHA512 +#error ED25519 requires SHA512 +#endif +#include #ifdef WOLFSSL_ASYNC_CRYPT - #include + #include #endif #ifdef __cplusplus @@ -87,6 +90,14 @@ struct ed25519_key { #ifdef WOLFSSL_ASYNC_CRYPT WC_ASYNC_DEV asyncDev; #endif +#if defined(WOLF_CRYPTO_CB) + int devId; +#endif + void *heap; +#ifdef WOLFSSL_ED25519_PERSISTENT_SHA + wc_Sha512 sha; + int sha_clean_flag; +#endif }; @@ -95,6 +106,7 @@ int wc_ed25519_make_public(ed25519_key* key, unsigned char* pubKey, word32 pubKeySz); WOLFSSL_API int wc_ed25519_make_key(WC_RNG* rng, int keysize, ed25519_key* key); +#ifdef HAVE_ED25519_SIGN WOLFSSL_API int wc_ed25519_sign_msg(const byte* in, word32 inLen, byte* out, word32 *outLen, ed25519_key* key); @@ -111,6 +123,12 @@ int wc_ed25519ph_sign_msg(const byte* in, word32 inLen, byte* out, word32 *outLen, ed25519_key* key, const byte* context, byte contextLen); WOLFSSL_API +int wc_ed25519_sign_msg_ex(const byte* in, word32 inLen, byte* out, + word32 *outLen, ed25519_key* key, byte type, + const byte* context, byte contextLen); +#endif /* HAVE_ED25519_SIGN */ +#ifdef HAVE_ED25519_VERIFY +WOLFSSL_API int wc_ed25519_verify_msg(const byte* sig, word32 sigLen, const byte* msg, word32 msgLen, int* stat, ed25519_key* key); WOLFSSL_API @@ -125,10 +143,31 @@ WOLFSSL_API int wc_ed25519ph_verify_msg(const byte* sig, word32 sigLen, const byte* msg, word32 msgLen, int* stat, ed25519_key* key, const byte* context, byte contextLen); +WOLFSSL_API +int wc_ed25519_verify_msg_ex(const byte* sig, word32 sigLen, const byte* msg, + word32 msgLen, int* res, ed25519_key* key, + byte type, const byte* context, byte contextLen); +#ifdef WOLFSSL_ED25519_STREAMING_VERIFY +WOLFSSL_API +int wc_ed25519_verify_msg_init(const byte* sig, word32 sigLen, ed25519_key* key, + byte type, const byte* context, byte contextLen); +WOLFSSL_API +int wc_ed25519_verify_msg_update(const byte* msgSegment, word32 msgSegmentLen, + ed25519_key* key); +WOLFSSL_API +int wc_ed25519_verify_msg_final(const byte* sig, word32 sigLen, int* res, + ed25519_key* key); +#endif /* WOLFSSL_ED25519_STREAMING_VERIFY */ +#endif /* HAVE_ED25519_VERIFY */ + + WOLFSSL_API int wc_ed25519_init(ed25519_key* key); WOLFSSL_API +int wc_ed25519_init_ex(ed25519_key* key, void* heap, int devId); +WOLFSSL_API void wc_ed25519_free(ed25519_key* key); +#ifdef HAVE_ED25519_KEY_IMPORT WOLFSSL_API int wc_ed25519_import_public(const byte* in, word32 inLen, ed25519_key* key); WOLFSSL_API @@ -137,6 +176,9 @@ int wc_ed25519_import_private_only(const byte* priv, word32 privSz, WOLFSSL_API int wc_ed25519_import_private_key(const byte* priv, word32 privSz, const byte* pub, word32 pubSz, ed25519_key* key); +#endif /* HAVE_ED25519_KEY_IMPORT */ + +#ifdef HAVE_ED25519_KEY_EXPORT WOLFSSL_API int wc_ed25519_export_public(ed25519_key*, byte* out, word32* outLen); WOLFSSL_API @@ -147,6 +189,7 @@ WOLFSSL_API int wc_ed25519_export_key(ed25519_key* key, byte* priv, word32 *privSz, byte* pub, word32 *pubSz); +#endif /* HAVE_ED25519_KEY_EXPORT */ WOLFSSL_API int wc_ed25519_check_key(ed25519_key* key); diff --git a/source/libwolfssl/wolfcrypt/ed448.h b/source/libwolfssl/wolfcrypt/ed448.h index d90d99a4..37602bf1 100644 --- a/source/libwolfssl/wolfcrypt/ed448.h +++ b/source/libwolfssl/wolfcrypt/ed448.h @@ -1,6 +1,6 @@ /* ed448.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -27,17 +27,20 @@ #ifndef WOLF_CRYPT_ED448_H #define WOLF_CRYPT_ED448_H -#include +#include #ifdef HAVE_ED448 -#include -#include -#include -#include +#include +#include +#include +#ifndef WOLFSSL_SHAKE256 +#error ED448 requires SHAKE256 +#endif +#include #ifdef WOLFSSL_ASYNC_CRYPT - #include + #include #endif #ifdef __cplusplus @@ -62,6 +65,7 @@ /* both private and public key */ #define ED448_PRV_KEY_SIZE (ED448_PUB_KEY_SIZE+ED448_KEY_SIZE) +#define ED448_PREHASH_SIZE 64 enum { Ed448 = 0, @@ -86,6 +90,14 @@ struct ed448_key { #ifdef WOLFSSL_ASYNC_CRYPT WC_ASYNC_DEV asyncDev; #endif +#if defined(WOLF_CRYPTO_CB) + int devId; +#endif + void *heap; +#ifdef WOLFSSL_ED448_PERSISTENT_SHA + wc_Shake sha; + int sha_clean_flag; +#endif }; @@ -94,6 +106,7 @@ int wc_ed448_make_public(ed448_key* key, unsigned char* pubKey, word32 pubKeySz); WOLFSSL_API int wc_ed448_make_key(WC_RNG* rng, int keysize, ed448_key* key); +#ifdef HAVE_ED448_SIGN WOLFSSL_API int wc_ed448_sign_msg(const byte* in, word32 inLen, byte* out, word32 *outLen, ed448_key* key, const byte* context, byte contextLen); @@ -102,9 +115,30 @@ int wc_ed448ph_sign_hash(const byte* hash, word32 hashLen, byte* out, word32 *outLen, ed448_key* key, const byte* context, byte contextLen); WOLFSSL_API +int wc_ed448_sign_msg_ex(const byte* in, word32 inLen, byte* out, + word32 *outLen, ed448_key* key, byte type, + const byte* context, byte contextLen); +WOLFSSL_API int wc_ed448ph_sign_msg(const byte* in, word32 inLen, byte* out, word32 *outLen, ed448_key* key, const byte* context, byte contextLen); +#endif /* HAVE_ED448_SIGN */ +#ifdef HAVE_ED448_VERIFY +WOLFSSL_API +int wc_ed448_verify_msg_ex(const byte* sig, word32 sigLen, const byte* msg, + word32 msgLen, int* res, ed448_key* key, + byte type, const byte* context, byte contextLen); +#ifdef WOLFSSL_ED448_STREAMING_VERIFY +WOLFSSL_API +int wc_ed448_verify_msg_init(const byte* sig, word32 sigLen, ed448_key* key, + byte type, const byte* context, byte contextLen); +WOLFSSL_API +int wc_ed448_verify_msg_update(const byte* msgSegment, word32 msgSegmentLen, + ed448_key* key); +WOLFSSL_API +int wc_ed448_verify_msg_final(const byte* sig, word32 sigLen, + int* stat, ed448_key* key); +#endif /* WOLFSSL_ED448_STREAMING_VERIFY */ WOLFSSL_API int wc_ed448_verify_msg(const byte* sig, word32 sigLen, const byte* msg, word32 msgLen, int* stat, ed448_key* key, @@ -117,10 +151,15 @@ WOLFSSL_API int wc_ed448ph_verify_msg(const byte* sig, word32 sigLen, const byte* msg, word32 msgLen, int* stat, ed448_key* key, const byte* context, byte contextLen); +#endif /* HAVE_ED448_VERIFY */ +WOLFSSL_API +int wc_ed448_init_ex(ed448_key* key, void *heap, int devId); WOLFSSL_API int wc_ed448_init(ed448_key* key); WOLFSSL_API void wc_ed448_free(ed448_key* key); + +#ifdef HAVE_ED448_KEY_IMPORT WOLFSSL_API int wc_ed448_import_public(const byte* in, word32 inLen, ed448_key* key); WOLFSSL_API @@ -129,6 +168,9 @@ int wc_ed448_import_private_only(const byte* priv, word32 privSz, WOLFSSL_API int wc_ed448_import_private_key(const byte* priv, word32 privSz, const byte* pub, word32 pubSz, ed448_key* key); +#endif /* HAVE_ED448_KEY_IMPORT */ + +#ifdef HAVE_ED448_KEY_EXPORT WOLFSSL_API int wc_ed448_export_public(ed448_key*, byte* out, word32* outLen); WOLFSSL_API @@ -138,6 +180,7 @@ int wc_ed448_export_private(ed448_key* key, byte* out, word32* outLen); WOLFSSL_API int wc_ed448_export_key(ed448_key* key, byte* priv, word32 *privSz, byte* pub, word32 *pubSz); +#endif /* HAVE_ED448_KEY_EXPORT */ WOLFSSL_API int wc_ed448_check_key(ed448_key* key); diff --git a/source/libwolfssl/wolfcrypt/error-crypt.h b/source/libwolfssl/wolfcrypt/error-crypt.h index 5b226bd1..48af52ca 100644 --- a/source/libwolfssl/wolfcrypt/error-crypt.h +++ b/source/libwolfssl/wolfcrypt/error-crypt.h @@ -1,6 +1,6 @@ /* error-crypt.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -31,7 +31,7 @@ the error status. #ifndef WOLF_CRYPT_ERROR_H #define WOLF_CRYPT_ERROR_H -#include +#include #if defined(HAVE_FIPS) && \ (!defined(HAVE_FIPS_VERSION) || (HAVE_FIPS_VERSION < 2)) @@ -234,8 +234,12 @@ enum { PSS_SALTLEN_RECOVER_E=-273, /* PSS slat length not recoverable */ CHACHA_POLY_OVERFLOW =-274, /* ChaCha20Poly1305 limit overflow */ ASN_SELF_SIGNED_E = -275, /* ASN self-signed certificate error */ + SAKKE_VERIFY_FAIL_E = -276, /* SAKKE derivation verification error */ + MISSING_IV = -277, /* IV was not set */ + MISSING_KEY = -278, /* Key was not set */ + BAD_LENGTH_E = -279, /* Value of length parameter is invalid. */ - WC_LAST_E = -275, /* Update this to indicate last error */ + WC_LAST_E = -279, /* Update this to indicate last error */ MIN_CODE_E = -300 /* errors -101 - -299 */ /* add new companion error id strings for any new error codes diff --git a/source/libwolfssl/wolfcrypt/fe_448.h b/source/libwolfssl/wolfcrypt/fe_448.h index ff62521c..4664ce4b 100644 --- a/source/libwolfssl/wolfcrypt/fe_448.h +++ b/source/libwolfssl/wolfcrypt/fe_448.h @@ -1,6 +1,6 @@ /* fe448_448.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -23,15 +23,11 @@ #ifndef WOLF_CRYPT_FE_448_H #define WOLF_CRYPT_FE_448_H -#include +#include #if defined(HAVE_CURVE448) || defined(HAVE_ED448) -#ifndef WOLFSSL_LINUXKM -#include -#endif - -#include +#include #if defined(HAVE___UINT128_T) && !defined(NO_CURVED448_128BIT) #define CURVED448_128BIT @@ -45,16 +41,23 @@ #if !defined(CURVE448_SMALL) && !defined(ED448_SMALL) #if defined(CURVED448_128BIT) - typedef int64_t fe448; - #ifdef __SIZEOF_INT128__ - typedef __uint128_t uint128_t; - typedef __int128_t int128_t; - #else - typedef unsigned long uint128_t __attribute__ ((mode(TI))); - typedef long int128_t __attribute__ ((mode(TI))); + typedef sword64 fe448; + #ifndef WOLFSSL_UINT128_T_DEFINED + #ifdef __SIZEOF_INT128__ + typedef __uint128_t uint128_t; + typedef __int128_t int128_t; + typedef __uint128_t word128; + typedef __int128_t sword128; + #else + typedef unsigned long uint128_t __attribute__ ((mode(TI))); + typedef long int128_t __attribute__ ((mode(TI))); + typedef uint128_t word128; + typedef int128_t sword128; + #endif + #define WOLFSSL_UINT128_T_DEFINED #endif #else - typedef int32_t fe448; + typedef sword32 fe448; #endif WOLFSSL_LOCAL void fe448_init(void); @@ -91,21 +94,21 @@ WOLFSSL_LOCAL void fe448_init(void); WOLFSSL_LOCAL int curve448(byte* r, const byte* n, const byte* a); #define fe448_reduce(a) -WOLFSSL_LOCAL void fe448_neg(uint8_t*,const uint8_t*); -WOLFSSL_LOCAL void fe448_add(uint8_t*, const uint8_t*, const uint8_t*); -WOLFSSL_LOCAL void fe448_sub(uint8_t*, const uint8_t*, const uint8_t*); -WOLFSSL_LOCAL void fe448_mul(uint8_t*,const uint8_t*,const uint8_t*); -WOLFSSL_LOCAL void fe448_sqr(uint8_t*, const uint8_t*); -WOLFSSL_LOCAL void fe448_mul39081(uint8_t*, const uint8_t*); -WOLFSSL_LOCAL void fe448_invert(uint8_t*, const uint8_t*); +WOLFSSL_LOCAL void fe448_neg(word8*,const word8*); +WOLFSSL_LOCAL void fe448_add(word8*, const word8*, const word8*); +WOLFSSL_LOCAL void fe448_sub(word8*, const word8*, const word8*); +WOLFSSL_LOCAL void fe448_mul(word8*,const word8*,const word8*); +WOLFSSL_LOCAL void fe448_sqr(word8*, const word8*); +WOLFSSL_LOCAL void fe448_mul39081(word8*, const word8*); +WOLFSSL_LOCAL void fe448_invert(word8*, const word8*); -WOLFSSL_LOCAL void fe448_copy(uint8_t*, const uint8_t*); -WOLFSSL_LOCAL int fe448_isnonzero(const uint8_t*); +WOLFSSL_LOCAL void fe448_copy(word8*, const word8*); +WOLFSSL_LOCAL int fe448_isnonzero(const word8*); WOLFSSL_LOCAL void fe448_norm(byte *a); -WOLFSSL_LOCAL void fe448_cmov(uint8_t*,const uint8_t*, int); -WOLFSSL_LOCAL void fe448_pow_2_446_222_1(uint8_t*,const uint8_t*); +WOLFSSL_LOCAL void fe448_cmov(word8*,const word8*, int); +WOLFSSL_LOCAL void fe448_pow_2_446_222_1(word8*,const word8*); #endif /* !CURVE448_SMALL || !ED448_SMALL */ diff --git a/source/libwolfssl/wolfcrypt/fe_operations.h b/source/libwolfssl/wolfcrypt/fe_operations.h index 666246c7..1f287a0e 100644 --- a/source/libwolfssl/wolfcrypt/fe_operations.h +++ b/source/libwolfssl/wolfcrypt/fe_operations.h @@ -1,6 +1,6 @@ /* fe_operations.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -23,17 +23,11 @@ #ifndef WOLF_CRYPT_FE_OPERATIONS_H #define WOLF_CRYPT_FE_OPERATIONS_H -#include +#include #if defined(HAVE_CURVE25519) || defined(HAVE_ED25519) -#if !defined(CURVE25519_SMALL) || !defined(ED25519_SMALL) -#ifndef WOLFSSL_LINUXKM - #include -#endif -#endif - -#include +#include #if defined(USE_INTEL_SPEEDUP) && !defined(NO_CURVED25519_X64) #define CURVED25519_X64 @@ -88,13 +82,13 @@ WOLFSSL_LOCAL int curve25519(byte * q, const byte * n, const byte * p); #if !defined(CURVE25519_SMALL) || !defined(ED25519_SMALL) #ifdef CURVED25519_ASM_64BIT - typedef int64_t fe[4]; + typedef sword64 fe[4]; #elif defined(CURVED25519_ASM_32BIT) - typedef int32_t fe[8]; + typedef sword32 fe[8]; #elif defined(CURVED25519_128BIT) - typedef int64_t fe[5]; + typedef sword64 fe[5]; #else - typedef int32_t fe[10]; + typedef sword32 fe[10]; #endif WOLFSSL_LOCAL void fe_copy(fe, const fe); @@ -122,8 +116,8 @@ WOLFSSL_LOCAL void fe_cmov(fe,const fe, int); WOLFSSL_LOCAL void fe_pow22523(fe,const fe); /* 64 type needed for SHA512 */ -WOLFSSL_LOCAL uint64_t load_3(const unsigned char *in); -WOLFSSL_LOCAL uint64_t load_4(const unsigned char *in); +WOLFSSL_LOCAL word64 load_3(const unsigned char *in); +WOLFSSL_LOCAL word64 load_4(const unsigned char *in); #ifdef CURVED25519_ASM WOLFSSL_LOCAL void fe_ge_to_p2(fe rx, fe ry, fe rz, const fe px, const fe py, diff --git a/source/libwolfssl/wolfcrypt/fips_test.h b/source/libwolfssl/wolfcrypt/fips_test.h index 6de943f2..b488817c 100644 --- a/source/libwolfssl/wolfcrypt/fips_test.h +++ b/source/libwolfssl/wolfcrypt/fips_test.h @@ -1,6 +1,6 @@ /* fips_test.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -24,7 +24,7 @@ #ifndef WOLF_CRYPT_FIPS_TEST_H #define WOLF_CRYPT_FIPS_TEST_H -#include +#include #ifdef __cplusplus diff --git a/source/libwolfssl/wolfcrypt/ge_448.h b/source/libwolfssl/wolfcrypt/ge_448.h index 56f08d25..585ec541 100644 --- a/source/libwolfssl/wolfcrypt/ge_448.h +++ b/source/libwolfssl/wolfcrypt/ge_448.h @@ -1,6 +1,6 @@ /* ge_448.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -23,11 +23,11 @@ #ifndef WOLF_CRYPT_GE_448_H #define WOLF_CRYPT_GE_448_H -#include +#include #ifdef HAVE_ED448 -#include +#include /* ge448 means group element. @@ -45,10 +45,10 @@ Representations: typedef byte ge448; #define GE448_WORDS 56 #elif defined(CURVED448_128BIT) - typedef int64_t ge448; + typedef sword64 ge448; #define GE448_WORDS 8 #else - typedef int32_t ge448; + typedef sword32 ge448; #define GE448_WORDS 16 #endif diff --git a/source/libwolfssl/wolfcrypt/ge_operations.h b/source/libwolfssl/wolfcrypt/ge_operations.h index 25af8085..9026c529 100644 --- a/source/libwolfssl/wolfcrypt/ge_operations.h +++ b/source/libwolfssl/wolfcrypt/ge_operations.h @@ -1,6 +1,6 @@ /* ge_operations.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -25,11 +25,11 @@ #ifndef WOLF_CRYPT_GE_OPERATIONS_H #define WOLF_CRYPT_GE_OPERATIONS_H -#include +#include #ifdef HAVE_ED25519 -#include +#include /* ge means group element. @@ -48,13 +48,13 @@ Representations: #ifdef ED25519_SMALL typedef byte ge[F25519_SIZE]; #elif defined(CURVED25519_ASM_64BIT) - typedef int64_t ge[4]; + typedef sword64 ge[4]; #elif defined(CURVED25519_ASM_32BIT) - typedef int32_t ge[8]; + typedef sword32 ge[8]; #elif defined(CURVED25519_128BIT) - typedef int64_t ge[5]; + typedef sword64 ge[5]; #else - typedef int32_t ge[10]; + typedef sword32 ge[10]; #endif typedef struct { diff --git a/source/libwolfssl/wolfcrypt/hash.h b/source/libwolfssl/wolfcrypt/hash.h index 32c60b3f..fb13fa9c 100644 --- a/source/libwolfssl/wolfcrypt/hash.h +++ b/source/libwolfssl/wolfcrypt/hash.h @@ -1,6 +1,6 @@ /* hash.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -26,34 +26,34 @@ #ifndef WOLF_CRYPT_HASH_H #define WOLF_CRYPT_HASH_H -#include +#include #ifndef NO_MD5 - #include + #include #endif #ifndef NO_SHA - #include + #include #endif #if defined(WOLFSSL_SHA224) || !defined(NO_SHA256) - #include + #include #endif #if defined(WOLFSSL_SHA384) || defined(WOLFSSL_SHA512) - #include + #include #endif #ifdef HAVE_BLAKE2 - #include + #include #endif #ifdef WOLFSSL_SHA3 - #include + #include #endif #ifndef NO_MD4 - #include + #include #endif #ifdef WOLFSSL_MD2 - #include + #include #endif #if defined(HAVE_BLAKE2) || defined(HAVE_BLAKE2S) - #include + #include #endif @@ -88,7 +88,7 @@ enum wc_HashFlags { #endif }; - +#ifndef NO_HASH_WRAPPER typedef union { #ifndef NO_MD5 wc_Md5 md5; @@ -112,6 +112,7 @@ typedef union { wc_Sha3 sha3; #endif } wc_HashAlg; +#endif /* !NO_HASH_WRAPPER */ /* Find largest possible digest size Note if this gets up to the size of 80 or over check smallstack build */ @@ -151,6 +152,8 @@ WOLFSSL_API enum wc_HashType wc_OidGetHash(int oid); WOLFSSL_API enum wc_HashType wc_HashTypeConvert(int hashType); +#ifndef NO_HASH_WRAPPER + WOLFSSL_API int wc_HashGetDigestSize(enum wc_HashType hash_type); WOLFSSL_API int wc_HashGetBlockSize(enum wc_HashType hash_type); WOLFSSL_API int wc_Hash(enum wc_HashType hash_type, @@ -175,37 +178,37 @@ WOLFSSL_API int wc_HashFree(wc_HashAlg* hash, enum wc_HashType type); #endif #ifndef NO_MD5 -#include +#include WOLFSSL_API int wc_Md5Hash(const byte* data, word32 len, byte* hash); #endif #ifndef NO_SHA -#include +#include WOLFSSL_API int wc_ShaHash(const byte*, word32, byte*); #endif #ifdef WOLFSSL_SHA224 -#include +#include WOLFSSL_API int wc_Sha224Hash(const byte*, word32, byte*); #endif /* defined(WOLFSSL_SHA224) */ #ifndef NO_SHA256 -#include +#include WOLFSSL_API int wc_Sha256Hash(const byte*, word32, byte*); #endif #ifdef WOLFSSL_SHA384 -#include +#include WOLFSSL_API int wc_Sha384Hash(const byte*, word32, byte*); #endif /* defined(WOLFSSL_SHA384) */ #ifdef WOLFSSL_SHA512 -#include +#include WOLFSSL_API int wc_Sha512Hash(const byte*, word32, byte*); #endif /* WOLFSSL_SHA512 */ #ifdef WOLFSSL_SHA3 -#include +#include WOLFSSL_API int wc_Sha3_224Hash(const byte*, word32, byte*); WOLFSSL_API int wc_Sha3_256Hash(const byte*, word32, byte*); WOLFSSL_API int wc_Sha3_384Hash(const byte*, word32, byte*); @@ -215,6 +218,8 @@ WOLFSSL_API int wc_Shake256Hash(const byte*, word32, byte*, word32); #endif #endif /* WOLFSSL_SHA3 */ +#endif /* !NO_HASH_WRAPPER */ + enum max_prf { #ifdef HAVE_FFDHE_8192 MAX_PRF_HALF = 516, /* Maximum half secret len */ diff --git a/source/libwolfssl/wolfcrypt/hc128.h b/source/libwolfssl/wolfcrypt/hc128.h index bf4b90c5..00b04000 100644 --- a/source/libwolfssl/wolfcrypt/hc128.h +++ b/source/libwolfssl/wolfcrypt/hc128.h @@ -1,6 +1,6 @@ /* hc128.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -27,7 +27,7 @@ #ifndef WOLF_CRYPT_HC128_H #define WOLF_CRYPT_HC128_H -#include +#include #ifndef NO_HC128 diff --git a/source/libwolfssl/wolfcrypt/hmac.h b/source/libwolfssl/wolfcrypt/hmac.h index 09095d40..76e0c510 100644 --- a/source/libwolfssl/wolfcrypt/hmac.h +++ b/source/libwolfssl/wolfcrypt/hmac.h @@ -1,6 +1,6 @@ /* hmac.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -28,7 +28,7 @@ #ifndef WOLF_CRYPT_HMAC_H #define WOLF_CRYPT_HMAC_H -#include +#include #if defined(HAVE_FIPS) && \ (!defined(HAVE_FIPS_VERSION) || (HAVE_FIPS_VERSION < 2)) @@ -40,7 +40,7 @@ #if defined(HAVE_FIPS) && \ defined(HAVE_FIPS_VERSION) && (HAVE_FIPS_VERSION >= 2) - #include + #include #endif #ifdef __cplusplus @@ -52,7 +52,7 @@ (defined(HAVE_FIPS_VERSION) && (HAVE_FIPS_VERSION >= 2)) #ifdef WOLFSSL_ASYNC_CRYPT - #include + #include #endif #ifndef NO_OLD_WC_NAMES @@ -94,7 +94,8 @@ enum { WC_SHA3_512 = WC_HASH_TYPE_SHA3_512, #endif #ifdef HAVE_PKCS11 - HMAC_MAX_ID_LEN = 32, + HMAC_MAX_ID_LEN = 32, + HMAC_MAX_LABEL_LEN = 32, #endif }; @@ -153,6 +154,8 @@ struct Hmac { #ifdef HAVE_PKCS11 byte id[HMAC_MAX_ID_LEN]; int idLen; + char label[HMAC_MAX_LABEL_LEN]; + int labelLen; #endif #if defined(WOLFSSL_ASYNC_CRYPT) || defined(WOLF_CRYPTO_CB) word16 keyLen; /* hmac key length (key in ipad) */ @@ -174,8 +177,12 @@ WOLFSSL_API int wc_HmacFinal(Hmac*, byte*); WOLFSSL_API int wc_HmacSizeByType(int type); WOLFSSL_API int wc_HmacInit(Hmac* hmac, void* heap, int devId); +#ifdef HAVE_PKCS11 WOLFSSL_API int wc_HmacInit_Id(Hmac* hmac, byte* id, int len, void* heap, int devId); +WOLFSSL_API int wc_HmacInit_Label(Hmac* hmac, const char* label, void* heap, + int devId); +#endif WOLFSSL_API void wc_HmacFree(Hmac*); WOLFSSL_API int wolfSSL_GetHmacMaxSize(void); diff --git a/source/libwolfssl/wolfcrypt/idea.h b/source/libwolfssl/wolfcrypt/idea.h index c3710202..44b8c4a3 100644 --- a/source/libwolfssl/wolfcrypt/idea.h +++ b/source/libwolfssl/wolfcrypt/idea.h @@ -1,6 +1,6 @@ /* idea.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -26,7 +26,7 @@ #ifndef WOLF_CRYPT_IDEA_H #define WOLF_CRYPT_IDEA_H -#include +#include #ifdef HAVE_IDEA diff --git a/source/libwolfssl/wolfcrypt/integer.h b/source/libwolfssl/wolfcrypt/integer.h index d62c54c2..d0f33ccd 100644 --- a/source/libwolfssl/wolfcrypt/integer.h +++ b/source/libwolfssl/wolfcrypt/integer.h @@ -1,6 +1,6 @@ /* integer.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -33,7 +33,7 @@ may not be faster on all */ #include /* will set MP_xxBIT if not default */ -#ifdef WOLFSSL_SP_MATH +#if defined(WOLFSSL_SP_MATH) || defined(WOLFSSL_SP_MATH_ALL) #include #elif defined(USE_FAST_MATH) #include @@ -72,7 +72,7 @@ extern "C" { /* detect 64-bit mode if possible */ -#if defined(__x86_64__) && !(defined (_MSC_VER) && defined(__clang__)) +#if (defined(__x86_64__) || defined(__aarch64__)) && !(defined (_MSC_VER) && defined(__clang__)) #if !(defined(MP_64BIT) && defined(MP_16BIT) && defined(MP_8BIT)) #define MP_64BIT #endif @@ -161,7 +161,7 @@ extern "C" { #define MP_OKAY 0 /* ok result */ #define MP_MEM -2 /* out of mem */ #define MP_VAL -3 /* invalid input */ -#define MP_NOT_INF -4 /* point not at infinity */ +#define MP_NOT_INF -4 /* point not at infinity */ #define MP_RANGE MP_NOT_INF #define MP_YES 1 /* yes response */ @@ -227,7 +227,8 @@ typedef int ltm_prime_callback(unsigned char *dst, int len, void *dat); /* ---> Basic Manipulations <--- */ #define mp_iszero(a) (((a)->used == 0) ? MP_YES : MP_NO) #define mp_isone(a) \ - (((((a)->used == 1)) && ((a)->dp[0] == 1u)) ? MP_YES : MP_NO) + (((((a)->used == 1)) && ((a)->dp[0] == 1u) && ((a)->sign == MP_ZPOS)) \ + ? MP_YES : MP_NO) #define mp_iseven(a) \ (((a)->used > 0 && (((a)->dp[0] & 1u) == 0u)) ? MP_YES : MP_NO) #define mp_isodd(a) \ @@ -255,9 +256,6 @@ typedef int ltm_prime_callback(unsigned char *dst, int len, void *dat); #define mp_prime_random(a, t, size, bbs, cb, dat) \ mp_prime_random_ex(a, t, ((size) * 8) + 1, (bbs==1)?LTM_PRIME_BBS:0, cb, dat) -#define mp_read_raw(mp, str, len) mp_read_signed_bin((mp), (str), (len)) -#define mp_raw_size(mp) mp_signed_bin_size(mp) -#define mp_toraw(mp, str) mp_to_signed_bin((mp), (str)) #define mp_read_mag(mp, str, len) mp_read_unsigned_bin((mp), (str), (len)) #define mp_mag_size(mp) mp_unsigned_bin_size(mp) #define mp_tomag(mp, str) mp_to_unsigned_bin((mp), (str)) @@ -285,7 +283,7 @@ MP_API int mp_init (mp_int * a); MP_API void mp_clear (mp_int * a); MP_API void mp_free (mp_int * a); MP_API void mp_forcezero(mp_int * a); -MP_API int mp_unsigned_bin_size(mp_int * a); +MP_API int mp_unsigned_bin_size(const mp_int * a); MP_API int mp_read_unsigned_bin (mp_int * a, const unsigned char *b, int c); MP_API int mp_to_unsigned_bin_at_pos(int x, mp_int *t, unsigned char *b); MP_API int mp_to_unsigned_bin (mp_int * a, unsigned char *b); @@ -296,10 +294,10 @@ MP_API int mp_exptmod_ex (mp_int * G, mp_int * X, int digits, mp_int * P, /* end functions needed by Rsa */ /* functions added to support above needed, removed TOOM and KARATSUBA */ -MP_API int mp_count_bits (mp_int * a); +MP_API int mp_count_bits (const mp_int * a); MP_API int mp_leading_bit (mp_int * a); MP_API int mp_init_copy (mp_int * a, mp_int * b); -MP_API int mp_copy (mp_int * a, mp_int * b); +MP_API int mp_copy (const mp_int * a, mp_int * b); MP_API int mp_grow (mp_int * a, int size); MP_API int mp_div_2d (mp_int * a, int b, mp_int * c, mp_int * d); MP_API void mp_zero (mp_int * a); diff --git a/source/libwolfssl/wolfcrypt/logging.h b/source/libwolfssl/wolfcrypt/logging.h index de9439a4..e3c2c53d 100644 --- a/source/libwolfssl/wolfcrypt/logging.h +++ b/source/libwolfssl/wolfcrypt/logging.h @@ -1,6 +1,6 @@ /* logging.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -100,6 +100,10 @@ WOLFSSL_API int wolfSSL_Debugging_ON(void); /* turn logging off */ WOLFSSL_API void wolfSSL_Debugging_OFF(void); +#ifdef HAVE_WC_INTROSPECTION + WOLFSSL_API const char *wolfSSL_configure_args(void); + WOLFSSL_API const char *wolfSSL_global_cflags(void); +#endif #if defined(OPENSSL_EXTRA) || defined(DEBUG_WOLFSSL_VERBOSE) WOLFSSL_LOCAL int wc_LoggingInit(void); @@ -187,6 +191,14 @@ WOLFSSL_API void wolfSSL_Debugging_OFF(void); #define WOLFSSL_ERROR_MSG(m) #endif +#ifdef HAVE_STACK_SIZE_VERBOSE + extern WOLFSSL_API THREAD_LS_T unsigned char *StackSizeCheck_myStack; + extern WOLFSSL_API THREAD_LS_T size_t StackSizeCheck_stackSize; + extern WOLFSSL_API THREAD_LS_T size_t StackSizeCheck_stackSizeHWM; + extern WOLFSSL_API THREAD_LS_T size_t *StackSizeCheck_stackSizeHWM_ptr; + extern WOLFSSL_API THREAD_LS_T void *StackSizeCheck_stackOffsetPointer; +#endif + #ifdef __cplusplus } #endif diff --git a/source/libwolfssl/wolfcrypt/md2.h b/source/libwolfssl/wolfcrypt/md2.h index ba13076b..d44b686c 100644 --- a/source/libwolfssl/wolfcrypt/md2.h +++ b/source/libwolfssl/wolfcrypt/md2.h @@ -1,6 +1,6 @@ /* md2.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -27,7 +27,7 @@ #ifndef WOLF_CRYPT_MD2_H #define WOLF_CRYPT_MD2_H -#include +#include #ifdef WOLFSSL_MD2 diff --git a/source/libwolfssl/wolfcrypt/md4.h b/source/libwolfssl/wolfcrypt/md4.h index 52fbbd60..2e37fdcb 100644 --- a/source/libwolfssl/wolfcrypt/md4.h +++ b/source/libwolfssl/wolfcrypt/md4.h @@ -1,6 +1,6 @@ /* md4.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -26,7 +26,7 @@ #ifndef WOLF_CRYPT_MD4_H #define WOLF_CRYPT_MD4_H -#include +#include #ifndef NO_MD4 diff --git a/source/libwolfssl/wolfcrypt/md5.h b/source/libwolfssl/wolfcrypt/md5.h index 5eb867b2..99a75ccc 100644 --- a/source/libwolfssl/wolfcrypt/md5.h +++ b/source/libwolfssl/wolfcrypt/md5.h @@ -1,6 +1,6 @@ /* md5.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -27,7 +27,7 @@ #ifndef WOLF_CRYPT_MD5_H #define WOLF_CRYPT_MD5_H -#include +#include #ifndef NO_MD5 @@ -42,9 +42,12 @@ extern "C" { #endif +#if !defined(NO_OLD_MD5_NAME) + #define MD5 WC_MD5 +#endif + #ifndef NO_OLD_WC_NAMES #define Md5 wc_Md5 - #define MD5 WC_MD5 #define MD5_BLOCK_SIZE WC_MD5_BLOCK_SIZE #define MD5_DIGEST_SIZE WC_MD5_DIGEST_SIZE #define WC_MD5_PAD_SIZE WC_MD5_PAD_SIZE @@ -60,18 +63,18 @@ enum { #ifdef WOLFSSL_MICROCHIP_PIC32MZ - #include + #include #endif #ifdef STM32_HASH - #include + #include #endif #ifdef WOLFSSL_ASYNC_CRYPT - #include + #include #endif #ifdef WOLFSSL_TI_HASH #include "wolfssl/wolfcrypt/port/ti/ti-hash.h" -#elif defined(WOLFSSL_IMX6_CAAM) +#elif defined(WOLFSSL_IMX6_CAAM) && !defined(WOLFSSL_QNX_CAAM) #include "wolfssl/wolfcrypt/port/caam/wolfcaam_sha.h" #else @@ -109,6 +112,9 @@ WOLFSSL_API int wc_InitMd5_ex(wc_Md5*, void*, int); WOLFSSL_API int wc_Md5Update(wc_Md5*, const byte*, word32); WOLFSSL_API int wc_Md5Final(wc_Md5*, byte*); WOLFSSL_API void wc_Md5Free(wc_Md5*); +#ifdef OPENSSL_EXTRA +WOLFSSL_API int wc_Md5Transform(wc_Md5*, const byte*); +#endif WOLFSSL_API int wc_Md5GetHash(wc_Md5*, byte*); WOLFSSL_API int wc_Md5Copy(wc_Md5*, wc_Md5*); diff --git a/source/libwolfssl/wolfcrypt/mem_track.h b/source/libwolfssl/wolfcrypt/mem_track.h index d33e90e6..362ef396 100644 --- a/source/libwolfssl/wolfcrypt/mem_track.h +++ b/source/libwolfssl/wolfcrypt/mem_track.h @@ -1,6 +1,6 @@ /* mem_track.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -76,6 +76,15 @@ long totalBytes; /* total number of bytes allocated */ long peakBytes; /* concurrent max bytes */ long currentBytes; /* total current bytes in use */ +#ifdef WOLFSSL_TRACK_MEMORY_VERBOSE + long peakAllocsTripOdometer; /* peak number of concurrent allocations, + * subject to reset by + * wolfCrypt_heap_peak_checkpoint() + */ + long peakBytesTripOdometer; /* peak concurrent bytes, subject to reset + * by wolfCrypt_heap_peak_checkpoint() + */ +#endif } memoryStats; typedef struct memHint { @@ -170,8 +179,17 @@ ourMemStats.totalAllocs++; ourMemStats.totalBytes += sz; ourMemStats.currentBytes += sz; - if (ourMemStats.currentBytes > ourMemStats.peakBytes) - ourMemStats.peakBytes = ourMemStats.currentBytes; + #ifdef WOLFSSL_TRACK_MEMORY_VERBOSE + if (ourMemStats.peakAllocsTripOdometer < ourMemStats.totalAllocs - ourMemStats.totalDeallocs) + ourMemStats.peakAllocsTripOdometer = ourMemStats.totalAllocs - ourMemStats.totalDeallocs; + if (ourMemStats.peakBytesTripOdometer < ourMemStats.currentBytes) { + ourMemStats.peakBytesTripOdometer = ourMemStats.currentBytes; + #endif + if (ourMemStats.currentBytes > ourMemStats.peakBytes) + ourMemStats.peakBytes = ourMemStats.currentBytes; + #ifdef WOLFSSL_TRACK_MEMORY_VERBOSE + } + #endif #endif #ifdef DO_MEM_LIST if (pthread_mutex_lock(&memLock) == 0) { @@ -338,8 +356,12 @@ ourMemStats.totalBytes = 0; ourMemStats.peakBytes = 0; ourMemStats.currentBytes = 0; +#ifdef WOLFSSL_TRACK_MEMORY_VERBOSE + ourMemStats.peakAllocsTripOdometer = 0; + ourMemStats.peakBytesTripOdometer = 0; +#endif #endif - + #ifdef DO_MEM_LIST XMEMSET(&ourMemList, 0, sizeof(ourMemList)); diff --git a/source/libwolfssl/wolfcrypt/memory.h b/source/libwolfssl/wolfcrypt/memory.h index 0014997c..4c1e4cc0 100644 --- a/source/libwolfssl/wolfcrypt/memory.h +++ b/source/libwolfssl/wolfcrypt/memory.h @@ -1,6 +1,6 @@ /* memory.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * diff --git a/source/libwolfssl/wolfcrypt/misc.h b/source/libwolfssl/wolfcrypt/misc.h index 1521d5c2..b359650f 100644 --- a/source/libwolfssl/wolfcrypt/misc.h +++ b/source/libwolfssl/wolfcrypt/misc.h @@ -1,6 +1,6 @@ /* misc.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -29,7 +29,7 @@ masking and clearing memory logic. #define WOLF_CRYPT_MISC_H -#include +#include #ifdef __cplusplus @@ -43,11 +43,23 @@ word32 rotlFixed(word32, word32); WOLFSSL_LOCAL word32 rotrFixed(word32, word32); +#ifdef WC_RC2 +WOLFSSL_LOCAL +word16 rotlFixed16(word16, word16); +WOLFSSL_LOCAL +word16 rotrFixed16(word16, word16); +#endif + WOLFSSL_LOCAL word32 ByteReverseWord32(word32); WOLFSSL_LOCAL void ByteReverseWords(word32*, const word32*, word32); +WOLFSSL_LOCAL +void XorWordsOut(wolfssl_word* r, const wolfssl_word* a, const wolfssl_word* b, + word32 n); +WOLFSSL_LOCAL +void xorbufout(void*, const void*, const void*, word32); WOLFSSL_LOCAL void XorWords(wolfssl_word*, const wolfssl_word*, word32); WOLFSSL_LOCAL @@ -103,7 +115,9 @@ WOLFSSL_LOCAL byte ctMaskLT(int a, int b); WOLFSSL_LOCAL byte ctMaskLTE(int a, int b); WOLFSSL_LOCAL byte ctMaskEq(int a, int b); WOLFSSL_LOCAL word16 ctMask16GT(int a, int b); +WOLFSSL_LOCAL word16 ctMask16GTE(int a, int b); WOLFSSL_LOCAL word16 ctMask16LT(int a, int b); +WOLFSSL_LOCAL word16 ctMask16LTE(int a, int b); WOLFSSL_LOCAL word16 ctMask16Eq(int a, int b); WOLFSSL_LOCAL byte ctMaskNotEq(int a, int b); WOLFSSL_LOCAL byte ctMaskSel(byte m, byte a, byte b); diff --git a/source/libwolfssl/wolfcrypt/mpi_class.h b/source/libwolfssl/wolfcrypt/mpi_class.h index ae2fa830..e04acc26 100644 --- a/source/libwolfssl/wolfcrypt/mpi_class.h +++ b/source/libwolfssl/wolfcrypt/mpi_class.h @@ -1,6 +1,6 @@ /* mpi_class.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * diff --git a/source/libwolfssl/wolfcrypt/mpi_superclass.h b/source/libwolfssl/wolfcrypt/mpi_superclass.h index 186ac750..91ebad82 100644 --- a/source/libwolfssl/wolfcrypt/mpi_superclass.h +++ b/source/libwolfssl/wolfcrypt/mpi_superclass.h @@ -1,6 +1,6 @@ /* mpi_superclass.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * diff --git a/source/libwolfssl/wolfcrypt/pkcs11.h b/source/libwolfssl/wolfcrypt/pkcs11.h index bf1cb1ec..09e2e684 100644 --- a/source/libwolfssl/wolfcrypt/pkcs11.h +++ b/source/libwolfssl/wolfcrypt/pkcs11.h @@ -1,6 +1,6 @@ /* pkcs11.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * diff --git a/source/libwolfssl/wolfcrypt/pkcs12.h b/source/libwolfssl/wolfcrypt/pkcs12.h index a9ab05f1..9d92f5ef 100644 --- a/source/libwolfssl/wolfcrypt/pkcs12.h +++ b/source/libwolfssl/wolfcrypt/pkcs12.h @@ -1,6 +1,6 @@ /* pkcs12.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -23,7 +23,7 @@ #ifndef WOLF_CRYPT_PKCS12_H #define WOLF_CRYPT_PKCS12_H -#include +#include #ifdef __cplusplus extern "C" { @@ -53,6 +53,8 @@ WOLFSSL_API int wc_i2d_PKCS12(WC_PKCS12* pkcs12, byte** der, int* derSz); WOLFSSL_API int wc_PKCS12_parse(WC_PKCS12* pkcs12, const char* psw, byte** pkey, word32* pkeySz, byte** cert, word32* certSz, WC_DerCertList** ca); +WOLFSSL_LOCAL int wc_PKCS12_verify_ex(WC_PKCS12* pkcs12, + const byte* psw, word32 pswSz); WOLFSSL_API WC_PKCS12* wc_PKCS12_create(char* pass, word32 passSz, char* name, byte* key, word32 keySz, byte* cert, word32 certSz, WC_DerCertList* ca, int nidKey, int nidCert, int iter, int macIter, diff --git a/source/libwolfssl/wolfcrypt/pkcs7.h b/source/libwolfssl/wolfcrypt/pkcs7.h index d1b3f4f6..cbb66b30 100644 --- a/source/libwolfssl/wolfcrypt/pkcs7.h +++ b/source/libwolfssl/wolfcrypt/pkcs7.h @@ -1,6 +1,6 @@ /* pkcs7.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -26,21 +26,22 @@ #ifndef WOLF_CRYPT_PKCS7_H #define WOLF_CRYPT_PKCS7_H -#include +#include #ifdef HAVE_PKCS7 #ifndef NO_ASN - #include + #include #endif -#include -#include +#include +#include #ifndef NO_AES - #include + #include #endif #ifndef NO_DES3 - #include + #include #endif +#include #ifdef __cplusplus extern "C" { @@ -48,8 +49,12 @@ /* Max number of certificates that PKCS7 structure can parse */ #ifndef MAX_PKCS7_CERTS +#ifdef OPENSSL_ALL + #define MAX_PKCS7_CERTS 15 +#else #define MAX_PKCS7_CERTS 4 #endif +#endif #ifndef MAX_ORI_TYPE_SZ #define MAX_ORI_TYPE_SZ MAX_OID_SZ @@ -153,15 +158,6 @@ enum Pkcs7_Misc { MAX_RECIP_SZ = MAX_VERSION_SZ + MAX_SEQ_SZ + ASN_NAME_MAX + MAX_SN_SZ + MAX_SEQ_SZ + MAX_ALGO_SZ + 1 + MAX_ENCRYPTED_KEY_SZ, -#if (defined(HAVE_FIPS) && defined(HAVE_FIPS_VERSION) && \ - (HAVE_FIPS_VERSION >= 2)) || (defined(HAVE_SELFTEST) && \ - (!defined(HAVE_SELFTEST_VERSION) || HAVE_SELFTEST_VERSION < 2)) - /* In the event of fips cert 3389 or CAVP selftest v1 build, these enums are - * not in aes.h for use with pkcs7 so enumerate it here outside the fips - * boundary */ - GCM_NONCE_MID_SZ = 12, /* The usual default nonce size for AES-GCM. */ - CCM_NONCE_MIN_SZ = 7, -#endif }; enum Cms_Options { diff --git a/source/libwolfssl/wolfcrypt/poly1305.h b/source/libwolfssl/wolfcrypt/poly1305.h index 7a37b040..9c71b790 100644 --- a/source/libwolfssl/wolfcrypt/poly1305.h +++ b/source/libwolfssl/wolfcrypt/poly1305.h @@ -1,6 +1,6 @@ /* poly1305.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -26,7 +26,7 @@ #ifndef WOLF_CRYPT_POLY1305_H #define WOLF_CRYPT_POLY1305_H -#include +#include #ifdef HAVE_POLY1305 @@ -109,15 +109,20 @@ typedef struct Poly1305 { /* does init */ WOLFSSL_API int wc_Poly1305SetKey(Poly1305* poly1305, const byte* key, - word32 kySz); + word32 kySz); WOLFSSL_API int wc_Poly1305Update(Poly1305* poly1305, const byte*, word32); WOLFSSL_API int wc_Poly1305Final(Poly1305* poly1305, byte* tag); /* AEAD Functions */ WOLFSSL_API int wc_Poly1305_Pad(Poly1305* ctx, word32 lenToPad); -WOLFSSL_API int wc_Poly1305_EncodeSizes(Poly1305* ctx, word32 aadSz, word32 dataSz); -WOLFSSL_API int wc_Poly1305_MAC(Poly1305* ctx, byte* additional, word32 addSz, - byte* input, word32 sz, byte* tag, word32 tagSz); +WOLFSSL_API int wc_Poly1305_EncodeSizes(Poly1305* ctx, word32 aadSz, + word32 dataSz); +#ifdef WORD64_AVAILABLE +WOLFSSL_API int wc_Poly1305_EncodeSizes64(Poly1305* ctx, word64 aadSz, + word64 dataSz); +#endif +WOLFSSL_API int wc_Poly1305_MAC(Poly1305* ctx, const byte* additional, + word32 addSz, const byte* input, word32 sz, byte* tag, word32 tagSz); #if defined(__aarch64__ ) && defined(WOLFSSL_ARMASM) void poly1305_blocks(Poly1305* ctx, const unsigned char *m, diff --git a/source/libwolfssl/wolfcrypt/port/Espressif/esp32-crypt.h b/source/libwolfssl/wolfcrypt/port/Espressif/esp32-crypt.h index 52624982..e3d2cc64 100644 --- a/source/libwolfssl/wolfcrypt/port/Espressif/esp32-crypt.h +++ b/source/libwolfssl/wolfcrypt/port/Espressif/esp32-crypt.h @@ -1,6 +1,6 @@ /* esp32-crypt.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -89,11 +89,13 @@ uint64_t wc_esp32elapsedTime(); /* RAW hash function APIs are not implemented with esp32 hardware acceleration*/ #define WOLFSSL_NO_HASH_RAW +#define SHA_CTX ETS_SHAContext #if ESP_IDF_VERSION_MAJOR >= 4 #include "esp32/rom/sha.h" #else #include "rom/sha.h" #endif +#undef SHA_CTX typedef enum { ESP32_SHA_INIT = 0, diff --git a/source/libwolfssl/wolfcrypt/port/Renesas/renesas-tsip-crypt.h b/source/libwolfssl/wolfcrypt/port/Renesas/renesas-tsip-crypt.h index 9ac47c82..d2214647 100644 --- a/source/libwolfssl/wolfcrypt/port/Renesas/renesas-tsip-crypt.h +++ b/source/libwolfssl/wolfcrypt/port/Renesas/renesas-tsip-crypt.h @@ -1,6 +1,6 @@ /* renesas-tsip-crypt.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -29,7 +29,7 @@ #endif #include "r_tsip_rx_if.h" -#include +#include #ifdef __cplusplus extern "C" { diff --git a/source/libwolfssl/wolfcrypt/port/af_alg/afalg_hash.h b/source/libwolfssl/wolfcrypt/port/af_alg/afalg_hash.h index 36c923b4..41a382a6 100644 --- a/source/libwolfssl/wolfcrypt/port/af_alg/afalg_hash.h +++ b/source/libwolfssl/wolfcrypt/port/af_alg/afalg_hash.h @@ -1,6 +1,6 @@ /* afalg_hash.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -23,7 +23,7 @@ #ifndef WOLF_CRYPT_AFALG_HASH_H #define WOLF_CRYPT_AFALG_HASH_H -#include +#include #undef WOLFSSL_NO_HASH_RAW #define WOLFSSL_NO_HASH_RAW diff --git a/source/libwolfssl/wolfcrypt/port/af_alg/wc_afalg.h b/source/libwolfssl/wolfcrypt/port/af_alg/wc_afalg.h index 38c1466c..87bff31f 100644 --- a/source/libwolfssl/wolfcrypt/port/af_alg/wc_afalg.h +++ b/source/libwolfssl/wolfcrypt/port/af_alg/wc_afalg.h @@ -1,6 +1,6 @@ /* wc_afalg.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -23,7 +23,7 @@ #ifndef WOLFSSL_AFALG_H #define WOLFSSL_AFALG_H -#include +#include #include #include diff --git a/source/libwolfssl/wolfcrypt/port/arm/cryptoCell.h b/source/libwolfssl/wolfcrypt/port/arm/cryptoCell.h index ae6b021f..387ecff1 100644 --- a/source/libwolfssl/wolfcrypt/port/arm/cryptoCell.h +++ b/source/libwolfssl/wolfcrypt/port/arm/cryptoCell.h @@ -1,6 +1,6 @@ /* cryptoCell.h * - * Copyright (C) 2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -27,7 +27,7 @@ extern "C" { #endif -#include +#include #include "sns_silib.h" diff --git a/source/libwolfssl/wolfcrypt/port/atmel/atmel.h b/source/libwolfssl/wolfcrypt/port/atmel/atmel.h index 273e1db8..950e9192 100644 --- a/source/libwolfssl/wolfcrypt/port/atmel/atmel.h +++ b/source/libwolfssl/wolfcrypt/port/atmel/atmel.h @@ -1,6 +1,6 @@ /* atmel.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -24,15 +24,13 @@ #include -#include -#include +#include +#include #if defined(WOLFSSL_ATECC508A) || defined(WOLFSSL_ATECC608A) || \ defined(WOLFSSL_ATECC_PKCB) - #undef SHA_BLOCK_SIZE - #define SHA_BLOCK_SIZE SHA_BLOCK_SIZE_REMAP - #include #undef SHA_BLOCK_SIZE + #include #endif /* ATECC508A/608A only supports ECC P-256 */ @@ -70,7 +68,7 @@ #endif /* ATECC_KEY_SIZE required for ecc.h */ -#include +#include struct WOLFSSL; struct WOLFSSL_CTX; @@ -121,7 +119,7 @@ int atmel_ecc_create_pms(int slotId, const uint8_t* peerKey, uint8_t* pms); int atmel_ecc_create_key(int slotId, byte* peerKey); int atmel_ecc_sign(int slotId, const byte* message, byte* signature); int atmel_ecc_verify(const byte* message, const byte* signature, - const byte* pubkey, int* verified); + const byte* pubkey, int* pVerified); #endif /* WOLFSSL_ATECC508A */ diff --git a/source/libwolfssl/wolfcrypt/port/caam/caam_driver.h b/source/libwolfssl/wolfcrypt/port/caam/caam_driver.h index cac1742c..8ab6cc34 100644 --- a/source/libwolfssl/wolfcrypt/port/caam/caam_driver.h +++ b/source/libwolfssl/wolfcrypt/port/caam/caam_driver.h @@ -1,6 +1,6 @@ /* caam_driver.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -22,11 +22,25 @@ #ifndef CAAM_DRIVER_H #define CAAM_DRIVER_H -#define CAAM_BASE 0xf2100000 +#if (defined(__QNX__) || defined(__QNXNTO__)) + int InitCAAM(void); + #include "caam_qnx.h" +#endif +#if (defined(__INTEGRITY) || defined(INTEGRITY)) + #define CAAM_BASE 0xf2100000 + #define CAAM_PAGE 0xf0100000 +#endif + -#define CAAM_PAGE 0xf0100000 #define CAAM_PAGE_MAX 6 +/* max size of 64 word32's */ +#define CAAM_DESC_MAX 256 + +#ifndef CAAM_JOBRING_SIZE +#define CAAM_JOBRING_SIZE 1 +#endif + /****************************************************************************** Basic Descriptors ****************************************************************************/ @@ -50,12 +64,16 @@ #define CAAM_HEAD 0xB0800000 #define CAAM_NWB 0x00200000 + /* PROTOCOL OPERATION command */ +#define CAAM_PROT_UNIDI 0 #define CAAM_BLOB_ENCAP 0x07000000 #define CAAM_BLOB_DECAP 0x06000000 +#define CAAM_PKHA_OP 0x01000000 + #define CAAM_OPID_BLOB 0x000D0000 /* algorithms modes and types */ -#define CAAM_CLASS1 0x02000000/* i.e. AES */ +#define CAAM_CLASS1 0x02000000/* i.e. AES, PKHA */ #define CAAM_CLASS2 0x04000000/* i.e. hash algos */ #define CAAM_ENC 0x00000001 @@ -90,6 +108,38 @@ #define CAAM_HMAC_SHA384 0x00440010 #define CAAM_HMAC_SHA512 0x00450010 +/* ECDSA ECDSEL (pre defined flags for ECDSA parameters i.e. order) */ +#define CAAM_ECDSEL_SHIFT 7 +#define CAAM_ECDSA_PD 0x00400000 +#define CAAM_ECDSA_KEYGEN_PD 0x02000000 +#define CAAM_ECDSA_P192 (0x00 << CAAM_ECDSEL_SHIFT) +#define CAAM_ECDSA_P224 (0x01 << CAAM_ECDSEL_SHIFT) +#define CAAM_ECDSA_P256 (0x02 << CAAM_ECDSEL_SHIFT) +#define CAAM_ECDSA_P384 (0x03 << CAAM_ECDSEL_SHIFT) +#define CAAM_ECDSA_P521 (0x04 << CAAM_ECDSEL_SHIFT) + +#define CAAM_ECDSA_BRAINPOOL_P256 (0x0B << CAAM_ECDSEL_SHIFT) + + /* PKHA Operation ID ECDSA */ +#define CAAM_ECDSA_KEYPAIR 0x00140000 +#define CAAM_ECDSA_SIGN 0x00150000 +#define CAAM_ECDSA_VERIFY 0x00160000 +#define CAAM_ECDSA_ECDH 0x00170000 + +#define CAAM_ECDSA_MESREP_HASHED (0x10 << 7) + + /* key encryption bit */ +#define CAAM_PKHA_ECC 0x00000002 +#define CAAM_PKHA_ENC_PRI_AESCBC 0x00000004 +#define CAAM_PKHA_ENC_PRI_AESCCM (0x00000010 | CAAM_PKHA_ENC_PRI_AESCBC) +#define CAAM_PKHA_NO_TIMING_RESISTANCE 0x40000000 +#define CAAM_LOAD_BLACK_KEY 0x500000 + + /* PKHA RSA */ +#define CAAM_OPID_RSA_ENCRYPT 0x00180000 +#define CAAM_OPID_RSA_DECRYPT 0x00190000 + + #define CAAM_MD5_CTXSZ (16 + 8) #define CAAM_SHA_CTXSZ (20 + 8) #define CAAM_SHA224_CTXSZ (32 + 8) @@ -117,71 +167,243 @@ #define CAAM_PAGE_SZ 4096 /* RNG Registers */ -#define CAAM_RTMCTL CAAM_BASE + 0X0600 -#define CAAM_RTSDCTL CAAM_BASE + 0X0610 -#define CAAM_RTFRQMIN CAAM_BASE + 0X0618 -#define CAAM_RTFRQMAX CAAM_BASE + 0X061C -#define CAAM_RDSTA CAAM_BASE + 0X06C0 -#define CAAM_RTSTATUS CAAM_BASE + 0x063C +#define CAAM_RTMCTL 0X0600 +#define CAAM_RTSDCTL 0X0610 +#define CAAM_RTFRQMIN 0X0618 +#define CAAM_RTFRQMAX 0X061C +#define CAAM_RDSTA 0X06C0 +#define CAAM_RTSTATUS 0x063C +#define CAAM_RDINT0 0x06D0 /* each of the following 11 RTENT registers are an offset of 4 from RTENT0 */ -#define CAAM_RTENT0 CAAM_BASE + 0x0640 -#define CAAM_RTENT11 CAAM_BASE + 0x066C /* Max RTENT register */ +#define CAAM_RTENT0 0x0640 +#define CAAM_RTENT11 0x066C /* Max RTENT register */ +#define CAAM_RTENT_MAX 0x067C /* RNG Masks/Values */ #ifndef CAAM_ENT_DLY - #define CAAM_ENT_DLY 1200 /* @TODO lower value may gain performance */ + /* Less than half the default value to try and increase entropy collection. + * Value is system clock cycles. */ + #define CAAM_ENT_DLY 1200 #endif +#ifndef CAAM_ENT_DLY_INCREMENT + #define CAAM_ENT_DLY_INCREMENT 500 +#endif +#ifndef CAAM_ENT_SAMPLE + /* default sample value from reference manual */ + #define CAAM_ENT_SAMPLE 0x09C4 +#endif +#ifndef CAAM_ENT_DLY_MAX + #define CAAM_ENT_DLY_MAX 12000 +#endif +#ifndef CAAM_ENT_MINSHIFT + /* default to the minimum entropy delay of 1/4 */ + #define CAAM_ENT_MINSHIFT 2 +#endif +#ifndef CAAM_ENT_MAXSHIFT + /* default to the maximum entropy delay of 16 times */ + #define CAAM_ENT_MAXSHIFT 4 +#endif + #define CAAM_PRGM 0x00010000 /* Set RTMCTL to program state */ #define CAAM_TRNG 0x00000020 /* Set TRNG access */ +#define CAAM_RTMCTL_RESET 0x40 /* TRNG reset to defaults */ #define CAAM_CTLERR 0x00001000 #define CAAM_ENTVAL 0x00000400 /* checking RTMCTL for entropy ready */ /* Input Job Ring Registers */ -#define CAAM_IRBAR0 CAAM_BASE + 0x1004 -#define CAAM_IRSR0 CAAM_BASE + 0x100C -#define CAAM_IRJAR0 CAAM_BASE + 0x101C +#define CAAM_IRBAR0 0x1004 + //0x1004 +#define CAAM_IRSR0 0x100C +#define CAAM_IRJAR0 0x101C + +#define CAAM_IRBAR2 0x3000 +#define CAAM_IRSR2 0x300C +#define CAAM_IRJAR2 0x301C +#define CAAM_IRSAR_JR2 0x3014 + + /* Output Job Ring Registers */ -#define CAAM_ORBAR0 CAAM_BASE + 0x1024 -#define CAAM_ORSR0 CAAM_BASE + 0x102C -#define CAAM_ORJAR0 CAAM_BASE + 0x103C +#define CAAM_ORBAR0 0x1024 + //0x1024 +#define CAAM_ORSR0 0x102C +#define CAAM_ORJAR0 0x103C +#define CAAM_ORBAR2 0x3024 + //0x1024 +#define CAAM_ORSR2 0x302C +#define CAAM_ORJAR2 0x303C + +#define JRCFGR_JR0_LS 0x1054 + /* Status Registers */ -#define CAAM_STATUS CAAM_BASE + 0x0FD4 -#define CAAM_VERSION_MS CAAM_BASE + 0x0FE8 -#define CAAM_VERSION_LS CAAM_BASE + 0x0FEC -#define CAMM_SUPPORT_MS CAAM_BASE + 0x0FF0 -#define CAMM_SUPPORT_LS CAAM_BASE + 0x0FF4 +#define CAAM_STATUS 0x0FD4 +#define CAAM_VERSION_MS 0x0FE8 +#define CAAM_VERSION_LS 0x0FEC +#define CAMM_SUPPORT_MS 0x0FF0 +#define CAMM_SUPPORT_LS 0x0FF4 +#define CAAM_SM_CMD 0x1BE4 +#define CAAM_SM_SMPO 0x1FBC +#define CAAM_SM_SMVID_MS 0x1FD8 +#define CAAM_SM_SMVID_LS 0x1FDC +#define CAAM_SM_STATUS 0x1BEC +#define CAAM_SM_CSP 0x00008000 +#define CAAM_SM_SMAP_LOCK 0x00002000 +#define CAAM_SM_SMAG_LOCK 0x00001000 +#define CAAM_SM_ALL_RW 0x000000FF -#define CAAM_C1DSR_LS CAAM_BASE + 0x8014 -#define CAAM_C1MR CAAM_BASE + 0x8004 +#define CAAM_C1DSR_LS 0x8014 +#define CAAM_C1MR 0x8004 /* output FIFO is 16 entries deep and each entry has a two 4 byte registers */ -#define CAAM_FIFOO_MS CAAM_BASE + 0x87F0 -#define CAAM_FIFOO_LS CAAM_BASE + 0x87F4 +#define CAAM_FIFOO_MS 0x87F0 +#define CAAM_FIFOO_LS 0x87F4 /* input FIFO is 16 entries deep with each entry having two 4 byte registers All data written to it from IP bus should be in big endian format */ -#define CAAM_FIFOI_LS CAAM_BASE + 0x87E0 +#define CAAM_FIFOI_LS 0x87E0 /* offset of 4 with range 0 .. 13 */ -#define CAAM_CTX1 CAAM_BASE + 0x8100 +#define CAAM_CTX1 0x8100 #define CAAM_CTRIV CAAM_CTX1 + 8 /* AES-CTR iv is in 2 and 3 */ #define CAAM_CBCIV CAAM_CTX1 /* AES-CBC iv is in 1 and 2 */ -/* instantiate RNG and create JDKEK, TDKEK, and TDSK key */ -static unsigned int wc_rng_start[] = { - CAAM_HEAD | 0x00000006, - CAAM_OP | CAAM_CLASS1 | CAAM_RNG | 0x00000004, /* Instantiate RNG handle 0 with TRNG */ - CAAM_JUMP | 0x02000001, /* wait for Class1 RNG and jump to next cmd */ - CAAM_LOAD | 0x00880004, /* Load to clear written register */ - 0x00000001, /* reset done interrupt */ - CAAM_OP | CAAM_CLASS1 | CAAM_RNG | 0x00001000 /* Generate secure keys */ + /* debugging registers */ +#define CAAM_DECORR 0x009C /* used to set DECO into debug mode */ +#define CAAM_DODJR 0x8E00 /* for hung operations */ +#define CAAM_DOJQCR_MS 0x8800 +#define CAAM_DOOPSTA_MS 0x8810 /* DECO operation status register */ +#define CAAM_DODAR 0x8808 /* address of current descriptor */ +#define CAAM_DODESB 0x8A00 /* 64 registers that hold the current descriptor buffer */ + + +#define JRINTR_JR0 0x104C +#define JRINTR_JR1 0x204C +#define JRINTR_JR2 0x304C + +#define CAAM_SINGLE_STEP_MODE 0x40000000 +#define CAAM_STEP 0x80000000 + +/* Port layer for CAAM driver, functions defined in caam_.c */ +unsigned int CAAM_READ(unsigned int reg); +void CAAM_WRITE(unsigned int reg, unsigned int in); +int CAAM_SET_BASEADDR(void); +void CAAM_UNSET_BASEADDR(void); +unsigned int CAAM_ADR_TO_PHYSICAL(void* in, int inSz); +void* CAAM_ADR_MAP(unsigned int in, int inSz, unsigned char copy); +void CAAM_ADR_UNMAP(void* vaddr, unsigned int out, int outSz, + unsigned char copy); +int CAAM_ADR_SYNC(void* vaddr, int sz); +CAAM_ADDRESS CAAM_ADR_TO_VIRTUAL(CAAM_ADDRESS in, int length); + +#ifndef WOLFSSL_CAAM_BUFFER +#define WOLFSSL_CAAM_BUFFER +typedef struct CAAM_BUFFER { + int BufferType; + CAAM_ADDRESS TheAddress; + int Length; +} CAAM_BUFFER; +#endif +unsigned int caamReadRegister(unsigned int reg); +void caamWriteRegister(unsigned int reg, unsigned int in); +int SynchronousSendRequest(int type, unsigned int args[4], CAAM_BUFFER *buf, int sz); +int CleanupCAAM(void); + + +/* Driver API that can be called by caam_.c port layers */ +typedef struct DESCSTRUCT DESCSTRUCT; + +int caamKeyCover(DESCSTRUCT *desc, int sz, unsigned int args[4]); +int caamTRNG(unsigned char *out, int outSz); +int caamECDSA_ECDH(DESCSTRUCT *desc, int sz, unsigned int args[4]); +int caamECDSASign(DESCSTRUCT *desc, int sz, unsigned int args[4]); +int caamECDSAVerify(DESCSTRUCT *desc, CAAM_BUFFER *buf, int sz, + unsigned int args[4]); +int caamECDSAMake(DESCSTRUCT *desc, CAAM_BUFFER *buf, unsigned int args[4]); + + +int caamAesCmac(DESCSTRUCT *desc, int sz, unsigned int args[4]); +int caamBlob(DESCSTRUCT *desc); + +CAAM_ADDRESS caamGetPartition(unsigned int part, int partSz, unsigned int flag); +int caamFreePart(unsigned int part); +int caamFindUnusuedPartition(void); + + + +void caamDescInit(DESCSTRUCT* desc, int type, unsigned int args[4], + CAAM_BUFFER* buf, int sz); + + +/* CAAM descriptor */ +#define DESC_COUNT 1 +#define MAX_BUF 20 +#define BUFFER_COUNT (MAX_BUF * DESC_COUNT) + +/* CAAM descriptors can only be 64 unsigned ints */ +#define MAX_DESC_SZ 64 + +/* 64 byte buffer for when data crosses a page boundary */ +#define ALIGN_BUF 16 + +/* MAX_CTX is 64 bytes (sha512 digest) + 8 bytes (CAAM length value) */ +#define MAX_CTX 18 + +#define MIN_READ_REG CAAM_BASE +#define MAX_READ_REG (CAAM_BASE + 0x00010000) + +struct buffer { + CAAM_ADDRESS data; + CAAM_ADDRESS dataSz; }; +struct DESCSTRUCT { +#if defined(__INTEGRITY) || defined(INTEGRITY) + struct IORequestStruct TheIORequest; +#endif + struct CAAM_DEVICE* caam; + struct buffer buf[MAX_BUF]; /* buffers holding data input address */ + unsigned int desc[MAX_DESC_SZ]; /* max size of 64 word32 */ + unsigned int aadSzBuf[4]; /* Formatted AAD size for CCM */ + unsigned int alignBuf[ALIGN_BUF]; /* 64 byte buffer for non page + align */ + unsigned int iv[MAX_CTX]; /* AES IV and also hash state */ + unsigned int ctxBuf[MAX_CTX]; /* key */ + CAAM_ADDRESS output; /* address to output buffer */ + CAAM_ADDRESS ctxOut; /* address to update buffer holding state */ + Value alignIdx;/* index for align buffer */ + Value idx; /* index for descriptor buffer */ + Value headIdx; /* for first portion of descriptor buffer */ + Value lastIdx; /* for last portion of descriptor buffer */ + Value outputIdx; /* idx to output buffer in "buf" */ + Value inputSz; /* size of input buffer */ + Value ctxSz; /* size of CTX/Key buffer */ + Value aadSz; /* AAD size for CCM */ + Value startIdx; /* for telling header where to start */ + Value lastFifo; + Value type; + Value state; + Value DescriptorCount; + Boolean running; /* True if building/running descriptor is + in process */ +}; + +/* wolfSSL specific flags */ +#define CAAM_FIND_PART 0xFFFFFFFF +#define CAAM_GET_PART 0xFFFFFFFE +#define CAAM_FREE_PART 0xFFFFFFFD +#define CAAM_READ_PART 0xFFFFFFFC +#define CAAM_WRITE_PART 0xFFFFFFFB + + +#define MAX_ECDSA_VERIFY_ADDR 8 +#define MAX_ECDSA_SIGN_ADDR 8 +#define BLACK_KEY_MAC_SZ 16 +#define BLACK_BLOB_KEYMOD_SZ 16 +#define RED_BLOB_KEYMOD_SZ 8 #endif /* CAAM_DRIVER_H */ diff --git a/source/libwolfssl/wolfcrypt/port/caam/wolfcaam.h b/source/libwolfssl/wolfcrypt/port/caam/wolfcaam.h index 159fec52..c306edea 100644 --- a/source/libwolfssl/wolfcrypt/port/caam/wolfcaam.h +++ b/source/libwolfssl/wolfcrypt/port/caam/wolfcaam.h @@ -1,6 +1,6 @@ /* wolfcaam.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -22,14 +22,21 @@ #ifndef WOLF_CRYPT_CAAM_INIT_H #define WOLF_CRYPT_CAAM_INIT_H -#include +#include +#include -#if defined(WOLFSSL_IMX6_CAAM) || defined(WOLFSSL_IMX6_CAAM_RNG) +/* include for porting layer */ +#ifdef WOLFSSL_QNX_CAAM + #include +#endif + +#if defined(WOLFSSL_IMX6_CAAM) || defined(WOLFSSL_IMX6_CAAM_RNG) || \ + defined(WOLFSSL_QNX_CAAM) -#include #if defined(__INTEGRITY) || defined(INTEGRITY) #include + typedef Buffer CAAM_BUFFER; #endif WOLFSSL_LOCAL int wc_caamInit(void); @@ -39,25 +46,107 @@ WOLFSSL_LOCAL int wc_caamFreeRng(void); WOLFSSL_LOCAL word32 wc_caamReadRegister(word32 reg); WOLFSSL_LOCAL void wc_caamWriteRegister(word32 reg, word32 value); -WOLFSSL_LOCAL int wc_caamAddAndWait(Buffer* buf, word32 arg[4], word32 type); +WOLFSSL_LOCAL int wc_caamAddAndWait(CAAM_BUFFER* buf, int sz, word32 arg[4], + word32 type); -WOLFSSL_API int wc_caamSetResource(IODevice ioDev); +WOLFSSL_LOCAL int caamFindUnusuedPartition(void); +WOLFSSL_LOCAL CAAM_ADDRESS caamGetPartition(int part, int sz); +WOLFSSL_LOCAL int caamFreePart(int partNum); +WOLFSSL_LOCAL int caamWriteToPartition(CAAM_ADDRESS addr, const unsigned char* in, int inSz); +WOLFSSL_LOCAL int caamReadPartition(CAAM_ADDRESS addr, unsigned char* out, int outSz); WOLFSSL_API int wc_caamOpenBlob(byte* data, word32 dataSz, byte* out, word32* outSz); WOLFSSL_API int wc_caamCreateBlob(byte* data, word32 dataSz, byte* out, word32* outSz); +WOLFSSL_API int wc_caamOpenBlob_ex(byte* data, word32 dataSz, byte* out, + word32* outSz, int type, byte* mod, word32 modSz); +WOLFSSL_API int wc_caamCreateBlob_ex(byte* data, word32 dataSz, byte* out, + word32* outSz, int type, byte* mod, word32 modSz); +WOLFSSL_API int wc_caamCoverKey(byte* in, word32 inSz, byte* out, word32* outSz, + int flag); + /* additional size that is added by CAAM when creating a blob */ #define WC_CAAM_BLOB_SZ 48 +#define WC_CAAM_MAC_SZ 16 +#define WC_CAAM_BLOB_RED 1 +#define WC_CAAM_BLOB_BLACK 2 +#define WC_CAAM_RED_KEYMOD_SZ 8 +#define WC_CAAM_BLACK_KEYMOD_SZ 16 +#define WC_CAAM_MAX_ENTROPY 44 -#ifndef WC_CAAM_READ - #define WC_CAAM_READ(reg) wc_caamReadRegister((reg)) -#endif -#ifndef WC_CAAM_WRITE - #define WC_CAAM_WRITE(reg, x) wc_caamWriteRegister((reg), (x)) +#ifndef WOLFSSL_QNX_CAAM + WOLFSSL_API int wc_caamSetResource(IODevice ioDev); + #ifndef WC_CAAM_READ + #define WC_CAAM_READ(reg) wc_caamReadRegister((reg)) + #endif + #ifndef WC_CAAM_WRITE + #define WC_CAAM_WRITE(reg, x) wc_caamWriteRegister((reg), (x)) + #endif #endif + +#define CAAM_AESCTR 0x00100000 +#define CAAM_AESCBC 0x00100100 +#define CAAM_AESECB 0x00100200 +#define CAAM_AESCFB 0x00100300 +#define CAAM_AESOFB 0x00100400 +#define CAAM_CMAC 0x00100600 +#define CAAM_AESCCM 0x00100800 + +#define CAAM_MD5 0x00400000 +#define CAAM_SHA 0x00410000 +#define CAAM_SHA224 0x00420000 +#define CAAM_SHA256 0x00430000 +#define CAAM_SHA384 0x00440000 +#define CAAM_SHA512 0x00450000 + +#define CAAM_HMAC_MD5 0x00400010 +#define CAAM_HMAC_SHA 0x00410010 +#define CAAM_HMAC_SHA224 0x00420010 +#define CAAM_HMAC_SHA256 0x00430010 +#define CAAM_HMAC_SHA384 0x00440010 +#define CAAM_HMAC_SHA512 0x00450010 + +#define CAAM_ECDSA_KEYPAIR 0x00140000 +#define CAAM_ECDSA_SIGN 0x00150000 +#define CAAM_ECDSA_VERIFY 0x00160000 +#define CAAM_ECDSA_ECDH 0x00170000 + +#define CAAM_BLOB_ENCAP 0x07000000 +#define CAAM_BLOB_DECAP 0x06000000 +#define CAAM_FIFO_S 0x60000000 +#define CAAM_FIFO_CCM_FLAG 0x00140000 + +#define CAAM_ENC 0x00000001 +#define CAAM_DEC 0x00000000 +#define CAAM_ALG_INIT 0x00000004 +#define CAAM_ALG_INITF 0x0000000C +#define CAAM_ALG_UPDATE 0x00000000 +#define CAAM_ALG_FINAL 0x00000008 + +/* ECDSA ECDSEL (pre defined flags for ECDSA parameters i.e. order) */ +#define CAAM_ECDSEL_SHIFT 7 +#define CAAM_ECDSA_PD 0x00400000 +#define CAAM_ECDSA_KEYGEN_PD 0x02000000 +#define CAAM_ECDSA_P192 (0x00 << CAAM_ECDSEL_SHIFT) +#define CAAM_ECDSA_P224 (0x01 << CAAM_ECDSEL_SHIFT) +#define CAAM_ECDSA_P256 (0x02 << CAAM_ECDSEL_SHIFT) +#define CAAM_ECDSA_P384 (0x03 << CAAM_ECDSEL_SHIFT) +#define CAAM_ECDSA_P521 (0x04 << CAAM_ECDSEL_SHIFT) + +#define CAAM_ECDSA_BRAINPOOL_P256 (0x0B << CAAM_ECDSEL_SHIFT) + +#define CAAM_ENTROPY 0x00500001 + +/* wolfSSL specific flags */ +#define CAAM_FIND_PART 0xFFFFFFFF +#define CAAM_GET_PART 0xFFFFFFFE +#define CAAM_FREE_PART 0xFFFFFFFD +#define CAAM_READ_PART 0xFFFFFFFC +#define CAAM_WRITE_PART 0xFFFFFFFB + #endif /* WOLFSSL_IMX6_CAAM */ #endif /* WOLF_CRYPT_CAAM_INIT_H */ diff --git a/source/libwolfssl/wolfcrypt/port/caam/wolfcaam_sha.h b/source/libwolfssl/wolfcrypt/port/caam/wolfcaam_sha.h index bf2b0d8d..88c3c9c3 100644 --- a/source/libwolfssl/wolfcrypt/port/caam/wolfcaam_sha.h +++ b/source/libwolfssl/wolfcrypt/port/caam/wolfcaam_sha.h @@ -1,6 +1,6 @@ /* wolfcaam_sha.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -22,11 +22,11 @@ #ifndef WOLF_CRYPT_CAAM_SHA_H #define WOLF_CRYPT_CAAM_SHA_H -#include +#include #ifdef WOLFSSL_IMX6_CAAM -#include +#include #define WOLFSSL_NO_HASH_RAW diff --git a/source/libwolfssl/wolfcrypt/port/cavium/cavium_octeon_sync.h b/source/libwolfssl/wolfcrypt/port/cavium/cavium_octeon_sync.h index f7914b8e..6a0d7604 100644 --- a/source/libwolfssl/wolfcrypt/port/cavium/cavium_octeon_sync.h +++ b/source/libwolfssl/wolfcrypt/port/cavium/cavium_octeon_sync.h @@ -1,8 +1,8 @@ /* cavium_octeon_sync.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * - * This file is part of wolfSSL. (formerly known as CyaSSL) + * This file is part of wolfSSL. * * wolfSSL is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -16,7 +16,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA */ #ifndef _CAVIUM_OCTEON_SYNC_H_ diff --git a/source/libwolfssl/wolfcrypt/port/cypress/psoc6_crypto.h b/source/libwolfssl/wolfcrypt/port/cypress/psoc6_crypto.h index 0c7be377..d3e4a09e 100644 --- a/source/libwolfssl/wolfcrypt/port/cypress/psoc6_crypto.h +++ b/source/libwolfssl/wolfcrypt/port/cypress/psoc6_crypto.h @@ -1,6 +1,6 @@ /* psoc6_crypto.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -22,46 +22,26 @@ #ifndef _PSOC6_CRYPTO_PORT_H_ #define _PSOC6_CRYPTO_PORT_H_ -#include -#ifdef USE_FAST_MATH - #include -#elif defined WOLFSSL_SP_MATH - #include -#else - #include -#endif +#include #include "cy_crypto_core_sha.h" #include "cy_device_headers.h" #include "psoc6_02_config.h" #include "cy_crypto_common.h" #include "cy_crypto_core.h" -#ifdef WOLFSSL_SHA512 -typedef struct wc_Sha512 { - cy_stc_crypto_sha_state_t hash_state; - cy_en_crypto_sha_mode_t sha_mode; - cy_stc_crypto_v2_sha512_buffers_t sha_buffers; -} wc_Sha512; -#define WC_SHA512_TYPE_DEFINED -#include +#ifdef WOLFSSL_SHA512 +#include #endif #ifndef NO_SHA256 - -typedef struct wc_Sha256 { - cy_stc_crypto_sha_state_t hash_state; - cy_en_crypto_sha_mode_t sha_mode; - cy_stc_crypto_v2_sha256_buffers_t sha_buffers; -} wc_Sha256; - -#include -#include +#include +#include #endif /* !def NO_SHA256 */ #ifdef HAVE_ECC -#include +#include int psoc6_ecc_verify_hash_ex(mp_int *r, mp_int *s, const byte* hash, word32 hashlen, int* verif_res, ecc_key* key); #endif /* HAVE_ECC */ diff --git a/source/libwolfssl/wolfcrypt/port/devcrypto/wc_devcrypto.h b/source/libwolfssl/wolfcrypt/port/devcrypto/wc_devcrypto.h index 849f5ce9..0181784d 100644 --- a/source/libwolfssl/wolfcrypt/port/devcrypto/wc_devcrypto.h +++ b/source/libwolfssl/wolfcrypt/port/devcrypto/wc_devcrypto.h @@ -1,6 +1,6 @@ /* wc_devcrypto.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -23,7 +23,7 @@ #ifndef WOLFSSL_DEVCRYPTO_H #define WOLFSSL_DEVCRYPTO_H -#include +#include #ifdef WOLFSSL_DEVCRYPTO diff --git a/source/libwolfssl/wolfcrypt/port/intel/quickassist_sync.h b/source/libwolfssl/wolfcrypt/port/intel/quickassist_sync.h index 8eb9421f..f140f618 100644 --- a/source/libwolfssl/wolfcrypt/port/intel/quickassist_sync.h +++ b/source/libwolfssl/wolfcrypt/port/intel/quickassist_sync.h @@ -1,8 +1,8 @@ /* quickassist_sync.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * - * This file is part of wolfSSL. (formerly known as CyaSSL) + * This file is part of wolfSSL. * * wolfSSL is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -16,7 +16,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA */ #ifndef _INTEL_QUICKASSIST_SYNC_H_ diff --git a/source/libwolfssl/wolfcrypt/port/nrf51.h b/source/libwolfssl/wolfcrypt/port/nrf51.h index 9c82099d..88996740 100644 --- a/source/libwolfssl/wolfcrypt/port/nrf51.h +++ b/source/libwolfssl/wolfcrypt/port/nrf51.h @@ -1,6 +1,6 @@ /* nrf51.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -27,7 +27,7 @@ extern "C" { #endif -#include +#include /* Public Functions */ int nrf51_random_generate(byte* output, word32 sz); diff --git a/source/libwolfssl/wolfcrypt/port/nxp/dcp_port.h b/source/libwolfssl/wolfcrypt/port/nxp/dcp_port.h index 87099da8..fb400ff9 100644 --- a/source/libwolfssl/wolfcrypt/port/nxp/dcp_port.h +++ b/source/libwolfssl/wolfcrypt/port/nxp/dcp_port.h @@ -1,6 +1,6 @@ /* dcp_port.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -21,24 +21,23 @@ #ifndef _DCP_PORT_H_ #define _DCP_PORT_H_ -#include -#ifdef USE_FAST_MATH - #include -#elif defined WOLFSSL_SP_MATH - #include -#else - #include +#include +#include "fsl_dcp.h" + +#ifndef NO_SHA256 +#include +void DCPSha256Free(wc_Sha256 *sha256); #endif -#include -#include -#include "fsl_device_registers.h" -#include "fsl_debug_console.h" -#include "fsl_dcp.h" +#ifndef NO_SHA +#include +void DCPShaFree(wc_Sha *sha); +#endif int wc_dcp_init(void); #ifndef NO_AES +#include int DCPAesInit(Aes* aes); void DCPAesFree(Aes *aes); @@ -53,25 +52,5 @@ int DCPAesEcbEncrypt(Aes* aes, byte* out, const byte* in, word32 sz); int DCPAesEcbDecrypt(Aes* aes, byte* out, const byte* in, word32 sz); #endif -#ifndef NO_SHA256 -typedef struct wc_Sha256_DCP { - dcp_handle_t handle; - dcp_hash_ctx_t ctx; -} wc_Sha256; -#define WC_SHA256_TYPE_DEFINED - -void DCPSha256Free(wc_Sha256 *sha256); - -#endif - -#ifndef NO_SHA -typedef struct wc_Sha_DCP { - dcp_handle_t handle; - dcp_hash_ctx_t ctx; -} wc_Sha; -#define WC_SHA_TYPE_DEFINED - -void DCPShaFree(wc_Sha *sha); -#endif #endif diff --git a/source/libwolfssl/wolfcrypt/port/nxp/ksdk_port.h b/source/libwolfssl/wolfcrypt/port/nxp/ksdk_port.h index 20dc8148..0c3e484a 100644 --- a/source/libwolfssl/wolfcrypt/port/nxp/ksdk_port.h +++ b/source/libwolfssl/wolfcrypt/port/nxp/ksdk_port.h @@ -1,6 +1,6 @@ /* ksdk_port.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -22,17 +22,17 @@ #ifndef _KSDK_PORT_H_ #define _KSDK_PORT_H_ -#include +#include #ifdef USE_FAST_MATH - #include + #include #elif defined WOLFSSL_SP_MATH - #include + #include #else - #include + #include #endif -#include -#include -#include +#include +#include +#include /* API to init required hardware */ @@ -46,6 +46,7 @@ int ksdk_port_init(void); int wolfcrypt_mp_mod(mp_int *a, mp_int *b, mp_int *c); int wolfcrypt_mp_invmod(mp_int *a, mp_int *b, mp_int *c); int wolfcrypt_mp_exptmod(mp_int *G, mp_int *X, mp_int *P, mp_int *Y); + int wolfcrypt_mp_prime_is_prime_ex(mp_int* a, int t, int* result, WC_RNG* rng); /* Exported mp_mulmod function */ int mp_mulmod(mp_int *a, mp_int *b, mp_int *c, mp_int *d); diff --git a/source/libwolfssl/wolfcrypt/port/pic32/pic32mz-crypt.h b/source/libwolfssl/wolfcrypt/port/pic32/pic32mz-crypt.h index 1e1277ad..b5edceeb 100644 --- a/source/libwolfssl/wolfcrypt/port/pic32/pic32mz-crypt.h +++ b/source/libwolfssl/wolfcrypt/port/pic32/pic32mz-crypt.h @@ -1,6 +1,6 @@ /* pic32mz-crypt.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -27,7 +27,7 @@ extern "C" { #endif -#include +#include #ifdef WOLFSSL_MICROCHIP_PIC32MZ diff --git a/source/libwolfssl/wolfcrypt/port/st/stm32.h b/source/libwolfssl/wolfcrypt/port/st/stm32.h index f45d3e8b..0944472f 100644 --- a/source/libwolfssl/wolfcrypt/port/st/stm32.h +++ b/source/libwolfssl/wolfcrypt/port/st/stm32.h @@ -1,6 +1,6 @@ /* stm32.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -25,8 +25,8 @@ /* Generic STM32 Hashing and Crypto Functions */ /* Supports CubeMX HAL or Standard Peripheral Library */ -#include -#include +#include +#include #ifdef STM32_HASH diff --git a/source/libwolfssl/wolfcrypt/port/st/stsafe.h b/source/libwolfssl/wolfcrypt/port/st/stsafe.h index 16cd8f24..0809fcd3 100644 --- a/source/libwolfssl/wolfcrypt/port/st/stsafe.h +++ b/source/libwolfssl/wolfcrypt/port/st/stsafe.h @@ -1,6 +1,6 @@ /* stsafe.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -22,16 +22,16 @@ #ifndef _WOLFPORT_STSAFE_H_ #define _WOLFPORT_STSAFE_H_ -#include -#include -#include +#include +#include +#include #ifdef WOLF_CRYPTO_CB -#include +#include #endif #if !defined(WOLFCRYPT_ONLY) && defined(HAVE_PK_CALLBACKS) -#include +#include #endif #ifdef WOLFSSL_STSAFEA100 diff --git a/source/libwolfssl/wolfcrypt/port/ti/ti-ccm.h b/source/libwolfssl/wolfcrypt/port/ti/ti-ccm.h index a66bb61c..f14add29 100644 --- a/source/libwolfssl/wolfcrypt/port/ti/ti-ccm.h +++ b/source/libwolfssl/wolfcrypt/port/ti/ti-ccm.h @@ -1,6 +1,6 @@ /* port/ti/ti_ccm.c * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -27,7 +27,7 @@ #include #endif -#include +#include #if defined(WOLFSSL_TI_CRYPT) || defined(WOLFSSL_TI_HASH) diff --git a/source/libwolfssl/wolfcrypt/port/ti/ti-hash.h b/source/libwolfssl/wolfcrypt/port/ti/ti-hash.h index 8efdc5c0..93210186 100644 --- a/source/libwolfssl/wolfcrypt/port/ti/ti-hash.h +++ b/source/libwolfssl/wolfcrypt/port/ti/ti-hash.h @@ -1,6 +1,6 @@ /* port/ti/ti-hash.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -23,7 +23,7 @@ #ifndef WOLF_CRYPT_TI_HASH_H #define WOLF_CRYPT_TI_HASH_H -#include +#include #ifndef WOLFSSL_TI_INITBUFF #define WOLFSSL_TI_INITBUFF 64 diff --git a/source/libwolfssl/wolfcrypt/port/xilinx/xil-sha3.h b/source/libwolfssl/wolfcrypt/port/xilinx/xil-sha3.h index 47b46242..edaa4fa4 100644 --- a/source/libwolfssl/wolfcrypt/port/xilinx/xil-sha3.h +++ b/source/libwolfssl/wolfcrypt/port/xilinx/xil-sha3.h @@ -1,6 +1,6 @@ /* xil-sha3.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * diff --git a/source/libwolfssl/wolfcrypt/pwdbased.h b/source/libwolfssl/wolfcrypt/pwdbased.h index 6eb4a0f0..3705e672 100644 --- a/source/libwolfssl/wolfcrypt/pwdbased.h +++ b/source/libwolfssl/wolfcrypt/pwdbased.h @@ -1,6 +1,6 @@ /* pwdbased.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -26,7 +26,7 @@ #ifndef WOLF_CRYPT_PWDBASED_H #define WOLF_CRYPT_PWDBASED_H -#include +#include #ifndef NO_PWDBASED diff --git a/source/libwolfssl/wolfcrypt/rabbit.h b/source/libwolfssl/wolfcrypt/rabbit.h index c4d4475b..757945b0 100644 --- a/source/libwolfssl/wolfcrypt/rabbit.h +++ b/source/libwolfssl/wolfcrypt/rabbit.h @@ -1,6 +1,6 @@ /* rabbit.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -27,7 +27,7 @@ #ifndef WOLF_CRYPT_RABBIT_H #define WOLF_CRYPT_RABBIT_H -#include +#include #ifndef NO_RABBIT diff --git a/source/libwolfssl/wolfcrypt/random.h b/source/libwolfssl/wolfcrypt/random.h index 6e1f7e8d..4315b52b 100644 --- a/source/libwolfssl/wolfcrypt/random.h +++ b/source/libwolfssl/wolfcrypt/random.h @@ -1,6 +1,6 @@ /* random.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -220,12 +220,17 @@ WOLFSSL_ABI WOLFSSL_API int wc_RNG_GenerateBlock(WC_RNG*, byte*, word32 sz); WOLFSSL_API int wc_RNG_GenerateByte(WC_RNG*, byte*); WOLFSSL_API int wc_FreeRng(WC_RNG*); #else -#include +#include #define wc_InitRng(rng) NOT_COMPILED_IN #define wc_InitRng_ex(rng, h, d) NOT_COMPILED_IN #define wc_InitRngNonce(rng, n, s) NOT_COMPILED_IN #define wc_InitRngNonce_ex(rng, n, s, h, d) NOT_COMPILED_IN +#if defined(__ghs__) || defined(WC_NO_RNG_SIMPLE) +/* some older compilers do not like macro function in expression */ +#define wc_RNG_GenerateBlock(rng, b, s) NOT_COMPILED_IN +#else #define wc_RNG_GenerateBlock(rng, b, s) ({(void)rng; (void)b; (void)s; NOT_COMPILED_IN;}) +#endif #define wc_RNG_GenerateByte(rng, b) NOT_COMPILED_IN #define wc_FreeRng(rng) (void)NOT_COMPILED_IN #endif diff --git a/source/libwolfssl/wolfcrypt/ripemd.h b/source/libwolfssl/wolfcrypt/ripemd.h index 6ea81651..170e5085 100644 --- a/source/libwolfssl/wolfcrypt/ripemd.h +++ b/source/libwolfssl/wolfcrypt/ripemd.h @@ -1,6 +1,6 @@ /* ripemd.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -26,7 +26,7 @@ #ifndef WOLF_CRYPT_RIPEMD_H #define WOLF_CRYPT_RIPEMD_H -#include +#include #ifdef WOLFSSL_RIPEMD diff --git a/source/libwolfssl/wolfcrypt/rsa.h b/source/libwolfssl/wolfcrypt/rsa.h index ea5dafb8..8dad0f26 100644 --- a/source/libwolfssl/wolfcrypt/rsa.h +++ b/source/libwolfssl/wolfcrypt/rsa.h @@ -1,6 +1,6 @@ /* rsa.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -33,7 +33,7 @@ RSA keys can be used to encrypt, decrypt, sign and verify data. #ifndef WOLF_CRYPT_RSA_H #define WOLF_CRYPT_RSA_H -#include +#include #ifndef NO_RSA @@ -71,42 +71,45 @@ RSA keys can be used to encrypt, decrypt, sign and verify data. #define WOLFSSL_KEY_GEN #endif #else - #include - #include + #include + #include #endif /* HAVE_FIPS && HAVE_FIPS_VERION 1 */ #if defined(HAVE_FIPS) && \ defined(HAVE_FIPS_VERSION) && (HAVE_FIPS_VERSION >= 2) -#include +#include #endif /* header file needed for OAEP padding */ -#include +#include #ifdef WOLFSSL_XILINX_CRYPT #include "xsecure_rsa.h" #endif #if defined(WOLFSSL_CRYPTOCELL) - #include + #include #endif #ifdef __cplusplus extern "C" { #endif -enum { - RSA_MIN_SIZE = 512, - RSA_MAX_SIZE = 4096, -}; +#ifndef RSA_MIN_SIZE +#define RSA_MIN_SIZE 512 +#endif + +#ifndef RSA_MAX_SIZE +#define RSA_MAX_SIZE 4096 +#endif /* avoid redefinition of structs */ #if !defined(HAVE_FIPS) || \ (defined(HAVE_FIPS_VERSION) && (HAVE_FIPS_VERSION >= 2)) #ifdef WOLFSSL_ASYNC_CRYPT - #include + #include #ifdef WOLFSSL_CERT_GEN - #include + #include #endif #endif @@ -141,8 +144,9 @@ enum { RSA_PSS_SALT_LEN_DISCOVER = -2, #endif -#ifdef HAVE_PKCS11 +#ifdef WOLF_CRYPTO_CB RSA_MAX_ID_LEN = 32, + RSA_MAX_LABEL_LEN = 32, #endif }; @@ -184,9 +188,11 @@ struct RsaKey { byte* mod; XSecure_Rsa xRsa; #endif -#ifdef HAVE_PKCS11 +#ifdef WOLF_CRYPTO_CB byte id[RSA_MAX_ID_LEN]; int idLen; + char label[RSA_MAX_LABEL_LEN]; + int labelLen; #endif #if defined(WOLFSSL_ASYNC_CRYPT) || !defined(WOLFSSL_RSA_VERIFY_INLINE) byte dataIsAlloc; @@ -213,9 +219,11 @@ struct RsaKey { WOLFSSL_API int wc_InitRsaKey(RsaKey* key, void* heap); WOLFSSL_API int wc_InitRsaKey_ex(RsaKey* key, void* heap, int devId); WOLFSSL_API int wc_FreeRsaKey(RsaKey* key); -#ifdef HAVE_PKCS11 +#ifdef WOLF_CRYPTO_CB WOLFSSL_API int wc_InitRsaKey_Id(RsaKey* key, unsigned char* id, int len, void* heap, int devId); +WOLFSSL_API int wc_InitRsaKey_Label(RsaKey* key, const char* label, void* heap, + int devId); #endif WOLFSSL_API int wc_CheckRsaKey(RsaKey* key); #ifdef WOLFSSL_XILINX_CRYPT @@ -246,6 +254,9 @@ WOLFSSL_API int wc_RsaSSL_Verify(const byte* in, word32 inLen, byte* out, word32 outLen, RsaKey* key); WOLFSSL_API int wc_RsaSSL_Verify_ex(const byte* in, word32 inLen, byte* out, word32 outLen, RsaKey* key, int pad_type); +WOLFSSL_API int wc_RsaSSL_Verify_ex2(const byte* in, word32 inLen, byte* out, + word32 outLen, RsaKey* key, int pad_type, + enum wc_HashType hash); WOLFSSL_API int wc_RsaPSS_VerifyInline(byte* in, word32 inLen, byte** out, enum wc_HashType hash, int mgf, RsaKey* key); @@ -275,7 +286,7 @@ WOLFSSL_API int wc_RsaPSS_VerifyCheck(byte* in, word32 inLen, enum wc_HashType hash, int mgf, RsaKey* key); -WOLFSSL_API int wc_RsaEncryptSize(RsaKey* key); +WOLFSSL_API int wc_RsaEncryptSize(const RsaKey* key); #if !defined(HAVE_FIPS) || \ (defined(HAVE_FIPS_VERSION) && (HAVE_FIPS_VERSION >= 2)) @@ -286,7 +297,7 @@ WOLFSSL_API int wc_RsaPublicKeyDecode(const byte* input, word32* inOutIdx, RsaKey*, word32); WOLFSSL_API int wc_RsaPublicKeyDecodeRaw(const byte* n, word32 nSz, const byte* e, word32 eSz, RsaKey* key); -#ifdef WOLFSSL_KEY_GEN +#if defined(WOLFSSL_KEY_GEN) || defined(OPENSSL_EXTRA) WOLFSSL_API int wc_RsaKeyToDer(RsaKey*, byte* output, word32 inLen); #endif @@ -367,6 +378,8 @@ WOLFSSL_LOCAL int wc_RsaUnPad_ex(byte* pkcsBlock, word32 pkcsBlockLen, byte** ou int mgf, byte* optLabel, word32 labelLen, int saltLen, int bits, void* heap); +WOLFSSL_LOCAL int wc_hash2mgf(enum wc_HashType hType); + #endif /* HAVE_USER_RSA */ #ifdef __cplusplus diff --git a/source/libwolfssl/wolfcrypt/selftest.h b/source/libwolfssl/wolfcrypt/selftest.h index 91aa0349..da97d0d4 100644 --- a/source/libwolfssl/wolfcrypt/selftest.h +++ b/source/libwolfssl/wolfcrypt/selftest.h @@ -1,6 +1,6 @@ /* selftest.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -24,7 +24,7 @@ #ifndef WOLFCRYPT_SELF_TEST_H #define WOLFCRYPT_SELF_TEST_H -#include +#include #ifdef __cplusplus diff --git a/source/libwolfssl/wolfcrypt/settings.h b/source/libwolfssl/wolfcrypt/settings.h index a305cec7..b22343d7 100644 --- a/source/libwolfssl/wolfcrypt/settings.h +++ b/source/libwolfssl/wolfcrypt/settings.h @@ -1,6 +1,6 @@ /* settings.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -35,7 +35,7 @@ * projects do it themselves. This should *NEVER* be defined when building * wolfSSL as it can cause hard to debug problems. */ #ifdef EXTERNAL_OPTS_OPENVPN -#include +#include #endif /* Uncomment next line if using IPHONE */ @@ -218,6 +218,11 @@ /* Uncomment next line if building for Linux Kernel Module */ /* #define WOLFSSL_LINUXKM */ +/* Uncomment next line if building for devkitPro */ +/* #define DEVKITPRO */ + +/* Uncomment next line if building for Dolphin Emulator */ +/* #define DOLPHIN_EMULATOR */ #include @@ -225,10 +230,9 @@ #include "user_settings.h" #elif defined(USE_HAL_DRIVER) && !defined(HAVE_CONFIG_H) /* STM Configuration File (generated by CubeMX) */ - #include "wolfSSL.wolfSSL_conf.h" + #include "wolfSSL.I-CUBE-wolfSSL_conf.h" #endif - /* make sure old RNG name is used with CTaoCrypt FIPS */ #ifdef HAVE_FIPS #if !defined(HAVE_FIPS_VERSION) || (HAVE_FIPS_VERSION < 2) @@ -358,12 +362,13 @@ #define NO_FILESYSTEM #define USE_FAST_MATH #define TFM_TIMING_RESISTANT - #define WOLFSSL_HAVE_MIN - #define WOLFSSL_HAVE_MAX #define NO_BIG_INT #endif #ifdef WOLFSSL_MICROCHIP_PIC32MZ + #define WOLFSSL_HAVE_MIN + #define WOLFSSL_HAVE_MAX + #ifndef NO_PIC32MZ_CRYPT #define WOLFSSL_PIC32MZ_CRYPT #endif @@ -678,17 +683,17 @@ extern void uITRON4_free(void *p) ; /* static char* gets(char *buff); */ static char* fgets(char *buff, int sz, XFILE fp) { - char * p = buff; - *p = '\0'; + char * s = buff; + *s = '\0'; while (1) { - *p = tm_getchar(-1); - tm_putchar(*p); - if (*p == '\r') { + *s = tm_getchar(-1); + tm_putchar(*s); + if (*s == '\r') { tm_putchar('\n'); - *p = '\0'; + *s = '\0'; break; } - p++; + s++; } return buff; } @@ -721,18 +726,20 @@ extern void uITRON4_free(void *p) ; !defined(WOLFSSL_STATIC_MEMORY) #define XMALLOC(s, h, type) pvPortMalloc((s)) #define XFREE(p, h, type) vPortFree((p)) - #endif - /* FreeRTOS pvPortRealloc() implementation can be found here: - https://github.com/wolfSSL/wolfssl-freertos/pull/3/files */ - #if !defined(USE_FAST_MATH) || defined(HAVE_ED25519) || defined(HAVE_ED448) - #if defined(WOLFSSL_ESPIDF) - /*In IDF, realloc(p, n) is equivalent to - heap_caps_realloc(p, s, MALLOC_CAP_8BIT) */ - #define XREALLOC(p, n, h, t) realloc((p), (n)) - #else - #define XREALLOC(p, n, h, t) pvPortRealloc((p), (n)) + /* FreeRTOS pvPortRealloc() implementation can be found here: + https://github.com/wolfSSL/wolfssl-freertos/pull/3/files */ + #if !defined(USE_FAST_MATH) || defined(HAVE_ED25519) || \ + defined(HAVE_ED448) + #if defined(WOLFSSL_ESPIDF) + /*In IDF, realloc(p, n) is equivalent to + heap_caps_realloc(p, s, MALLOC_CAP_8BIT) */ + #define XREALLOC(p, n, h, t) realloc((p), (n)) + #else + #define XREALLOC(p, n, h, t) pvPortRealloc((p), (n)) + #endif #endif #endif + #ifndef NO_WRITEV #define NO_WRITEV #endif @@ -910,11 +917,13 @@ extern void uITRON4_free(void *p) ; !defined(WOLFSSL_STATIC_MEMORY) #define XMALLOC(s, h, type) pvPortMalloc((s)) #define XFREE(p, h, type) vPortFree((p)) - #endif - /* FreeRTOS pvPortRealloc() implementation can be found here: - https://github.com/wolfSSL/wolfssl-freertos/pull/3/files */ - #if !defined(USE_FAST_MATH) || defined(HAVE_ED25519) || defined(HAVE_ED448) - #define XREALLOC(p, n, h, t) pvPortRealloc((p), (n)) + + /* FreeRTOS pvPortRealloc() implementation can be found here: + https://github.com/wolfSSL/wolfssl-freertos/pull/3/files */ + #if !defined(USE_FAST_MATH) || defined(HAVE_ED25519) || \ + defined(HAVE_ED448) + #define XREALLOC(p, n, h, t) pvPortRealloc((p), (n)) + #endif #endif #endif @@ -1070,7 +1079,9 @@ extern void uITRON4_free(void *p) ; #define ECC_TIMING_RESISTANT #undef HAVE_ECC + #ifndef WOLFCRYPT_FIPS_RAND #define HAVE_ECC + #endif #ifndef NO_AES #undef HAVE_AESCCM #define HAVE_AESCCM @@ -1165,13 +1176,18 @@ extern void uITRON4_free(void *p) ; #endif #if defined(FSL_FEATURE_LTC_HAS_PKHA) && FSL_FEATURE_LTC_HAS_PKHA + #ifndef WOLFCRYPT_FIPS_RAND #define FREESCALE_LTC_ECC + #endif #define FREESCALE_LTC_TFM /* the LTC PKHA hardware limit is 2048 bits (256 bytes) for integer arithmetic. the LTC_MAX_INT_BYTES defines the size of local variables that hold big integers. */ - #ifndef LTC_MAX_INT_BYTES - #define LTC_MAX_INT_BYTES (256) + /* size is multiplication of 2 big ints */ + #if !defined(NO_RSA) || !defined(NO_DH) + #define LTC_MAX_INT_BYTES (256*2) + #else + #define LTC_MAX_INT_BYTES (48*2) #endif /* This FREESCALE_LTC_TFM_RSA_4096_ENABLE macro can be defined. @@ -1215,6 +1231,8 @@ extern void uITRON4_free(void *p) ; #define USE_CERT_BUFFERS_4096 #undef FP_MAX_BITS #define FP_MAX_BITS (8192) + #undef SP_INT_BITS + #define SP_INT_BITS (4096) #undef NO_DH #define NO_DH @@ -1230,7 +1248,8 @@ extern void uITRON4_free(void *p) ; #if defined(WOLFSSL_STM32F2) || defined(WOLFSSL_STM32F4) || \ defined(WOLFSSL_STM32F7) || defined(WOLFSSL_STM32F1) || \ defined(WOLFSSL_STM32L4) || defined(WOLFSSL_STM32L5) || \ - defined(WOLFSSL_STM32WB) || defined(WOLFSSL_STM32H7) + defined(WOLFSSL_STM32WB) || defined(WOLFSSL_STM32H7) || \ + defined(WOLFSSL_STM32G0) #define SIZEOF_LONG_LONG 8 #ifndef CHAR_BIT @@ -1283,6 +1302,8 @@ extern void uITRON4_free(void *p) ; #include "stm32h7xx_hal.h" #elif defined(WOLFSSL_STM32WB) #include "stm32wbxx_hal.h" + #elif defined(WOLFSSL_STM32G0) + #include "stm32g0xx_hal.h" #endif #if defined(WOLFSSL_CUBEMX_USE_LL) && defined(WOLFSSL_STM32L4) #include "stm32l4xx_ll_rng.h" @@ -1333,7 +1354,8 @@ extern void uITRON4_free(void *p) ; #endif #endif /* WOLFSSL_STM32_CUBEMX */ #endif /* WOLFSSL_STM32F2 || WOLFSSL_STM32F4 || WOLFSSL_STM32L4 || - WOLFSSL_STM32L5 || WOLFSSL_STM32F7 || WOLFSSL_STMWB || WOLFSSL_STM32H7 */ + WOLFSSL_STM32L5 || WOLFSSL_STM32F7 || WOLFSSL_STMWB || + WOLFSSL_STM32H7 || WOLFSSL_STM32G0 */ #ifdef WOLFSSL_DEOS #include #include @@ -1365,7 +1387,6 @@ extern void uITRON4_free(void *p) ; #define WC_RSA_BLINDING #define HAVE_ECC - #define ALT_ECC_SIZE #define TFM_ECC192 #define TFM_ECC224 #define TFM_ECC256 @@ -1387,11 +1408,18 @@ extern void uITRON4_free(void *p) ; #ifdef MICRIUM #include #include - #include - #include - #include + #if defined(RTOS_MODULE_NET_AVAIL) || (APP_CFG_TCPIP_EN == DEF_ENABLED) + #include + #include + #if (OS_VERSION < 50000) + #include + #endif + #endif #include #include + #include + #include + #include #define USE_FAST_MATH #define TFM_TIMING_RESISTANT @@ -1415,7 +1443,7 @@ extern void uITRON4_free(void *p) ; #define NO_WOLFSSL_DIR #define NO_WRITEV - #ifndef CUSTOM_RAND_GENERATE + #if ! defined(WOLFSSL_SILABS_SE_ACCEL) && !defined(CUSTOM_RAND_GENERATE) #define CUSTOM_RAND_TYPE RAND_NBR #define CUSTOM_RAND_GENERATE Math_Rand #endif @@ -1445,10 +1473,25 @@ extern void uITRON4_free(void *p) ; (CPU_SIZE_T)(size))) #define XMEMCPY(pdest, psrc, size) ((void)Mem_Copy((void *)(pdest), \ (void *)(psrc), (CPU_SIZE_T)(size))) - #define XMEMCMP(pmem_1, pmem_2, size) \ - (((CPU_BOOLEAN)Mem_Cmp((void *)(pmem_1), \ - (void *)(pmem_2), \ + + #if (OS_VERSION < 50000) + #define XMEMCMP(pmem_1, pmem_2, size) \ + (((CPU_BOOLEAN)Mem_Cmp((void *)(pmem_1), \ + (void *)(pmem_2), \ (CPU_SIZE_T)(size))) ? DEF_NO : DEF_YES) + #else + /* Work around for Micrium OS version 5.8 change in behavior + * that returns DEF_NO for 0 size compare + */ + #define XMEMCMP(pmem_1, pmem_2, size) \ + (( (size < 1 ) || \ + ((CPU_BOOLEAN)Mem_Cmp((void *)(pmem_1), \ + (void *)(pmem_2), \ + (CPU_SIZE_T)(size)) == DEF_YES)) \ + ? 0 : 1) + #define XSNPRINTF snprintf + #endif + #define XMEMMOVE XMEMCPY #if (OS_CFG_MUTEX_EN == DEF_DISABLED) @@ -1582,12 +1625,11 @@ extern void uITRON4_free(void *p) ; #ifdef WOLFSSL_ZEPHYR #include - #include - #include + #include + #include #include #define WOLFSSL_DH_CONST - #define WOLFSSL_HAVE_MIN #define WOLFSSL_HAVE_MAX #define NO_WRITEV @@ -1599,7 +1641,9 @@ extern void uITRON4_free(void *p) ; void *z_realloc(void *ptr, size_t size); #define realloc z_realloc + #ifndef CONFIG_NET_SOCKETS_POSIX_NAMES #define CONFIG_NET_SOCKETS_POSIX_NAMES + #endif #endif #ifdef WOLFSSL_IMX6 @@ -1620,6 +1664,10 @@ extern void uITRON4_free(void *p) ; /* large performance gain with HAVE_AES_ECB defined */ #undef HAVE_AES_ECB #define HAVE_AES_ECB + + //@TODO used for now until plugging in caam aes use with qnx + #undef WOLFSSL_AES_DIRECT + #define WOLFSSL_AES_DIRECT #endif #endif @@ -1746,10 +1794,27 @@ extern void uITRON4_free(void *p) ; #endif #endif +/* The minimum allowed ECC key size */ +/* Note: 224-bits is equivelant to 2048-bit RSA */ +#ifndef ECC_MIN_KEY_SZ + #ifdef WOLFSSL_MIN_ECC_BITS + #define ECC_MIN_KEY_SZ WOLFSSL_MIN_ECC_BITS + #else + #if defined(HAVE_FIPS) && defined(HAVE_FIPS_VERSION) && HAVE_FIPS_VERSION >= 2 + /* FIPSv2 and ready (for now) includes 192-bit support */ + #define ECC_MIN_KEY_SZ 192 + #else + #define ECC_MIN_KEY_SZ 224 + #endif + #endif +#endif + /* ECC Configs */ #ifdef HAVE_ECC /* By default enable Sign, Verify, DHE, Key Import and Key Export unless explicitly disabled */ - #ifndef NO_ECC_SIGN + #if !defined(NO_ECC_SIGN) && \ + (!defined(ECC_TIMING_RESISTANT) || \ + (defined(ECC_TIMING_RESISTANT) && !defined(WC_NO_RNG))) #undef HAVE_ECC_SIGN #define HAVE_ECC_SIGN #endif @@ -1761,7 +1826,7 @@ extern void uITRON4_free(void *p) ; #undef HAVE_ECC_CHECK_KEY #define HAVE_ECC_CHECK_KEY #endif - #ifndef NO_ECC_DHE + #if !defined(NO_ECC_DHE) && !defined(WC_NO_RNG) #undef HAVE_ECC_DHE #define HAVE_ECC_DHE #endif @@ -1802,6 +1867,10 @@ extern void uITRON4_free(void *p) ; #ifndef NO_ED25519_VERIFY #undef HAVE_ED25519_VERIFY #define HAVE_ED25519_VERIFY + #ifdef WOLFSSL_ED25519_STREAMING_VERIFY + #undef WOLFSSL_ED25519_PERSISTENT_SHA + #define WOLFSSL_ED25519_PERSISTENT_SHA + #endif #endif #ifndef NO_ED25519_KEY_EXPORT #undef HAVE_ED25519_KEY_EXPORT @@ -1840,6 +1909,10 @@ extern void uITRON4_free(void *p) ; #ifndef NO_ED448_VERIFY #undef HAVE_ED448_VERIFY #define HAVE_ED448_VERIFY + #ifdef WOLFSSL_ED448_STREAMING_VERIFY + #undef WOLFSSL_ED448_PERSISTENT_SHA + #define WOLFSSL_ED448_PERSISTENT_SHA + #endif #endif #ifndef NO_ED448_KEY_EXPORT #undef HAVE_ED448_KEY_EXPORT @@ -1929,9 +2002,14 @@ extern void uITRON4_free(void *p) ; #error "FFDHE parameters are too large for FP_MAX_BIT as set" #endif #endif +#if defined(HAVE_FFDHE) && defined(SP_INT_BITS) + #if MIN_FFDHE_FP_MAX_BITS > SP_INT_BITS * 2 + #error "FFDHE parameters are too large for SP_INT_BIT as set" + #endif +#endif /* if desktop type system and fastmath increase default max bits */ -#ifdef WOLFSSL_X86_64_BUILD +#if defined(WOLFSSL_X86_64_BUILD) || defined(WOLFSSL_AARCH64_BUILD) #if defined(USE_FAST_MATH) && !defined(FP_MAX_BITS) #if MIN_FFDHE_FP_MAX_BITS <= 8192 #define FP_MAX_BITS 8192 @@ -1939,6 +2017,13 @@ extern void uITRON4_free(void *p) ; #define FP_MAX_BITS MIN_FFDHE_FP_MAX_BITS #endif #endif + #if defined(WOLFSSL_SP_MATH_ALL) && !defined(SP_INT_BITS) + #if MIN_FFDHE_FP_MAX_BITS <= 8192 + #define SP_INT_BITS 4096 + #else + #define PS_INT_BITS MIN_FFDHE_FP_MAX_BITS / 2 + #endif + #endif #endif /* If using the max strength build, ensure OLD TLS is disabled. */ @@ -2035,8 +2120,9 @@ extern void uITRON4_free(void *p) ; #if defined(HAVE_IO_POOL) || defined(XMALLOC_USER) || defined(NO_WOLFSSL_MEMORY) #error static memory cannot be used with HAVE_IO_POOL, XMALLOC_USER or NO_WOLFSSL_MEMORY #endif - #if !defined(USE_FAST_MATH) && !defined(NO_BIG_INT) - #error static memory requires fast math please define USE_FAST_MATH + #if !defined(WOLFSSL_SP_NO_MALLOC) && \ + !defined(USE_FAST_MATH) && !defined(NO_BIG_INT) + #error The static memory option is only supported for fast math or SP with no malloc #endif #ifdef WOLFSSL_SMALL_STACK #error static memory does not support small stack please undefine @@ -2118,12 +2204,15 @@ extern void uITRON4_free(void *p) ; #ifndef USE_WOLF_STRTOK #define USE_WOLF_STRTOK #endif - #ifndef WOLFSSL_SP_MOD_WORD_RP - #define WOLFSSL_SP_MOD_WORD_RP + #ifndef WOLFSSL_SP_DIV_WORD_HALF + #define WOLFSSL_SP_DIV_WORD_HALF #endif #ifndef WOLFSSL_OLD_PRIME_CHECK #define WOLFSSL_OLD_PRIME_CHECK #endif + #ifndef WOLFSSL_TEST_SUBROUTINE + #define WOLFSSL_TEST_SUBROUTINE static + #endif #undef HAVE_STRINGS_H #undef HAVE_ERRNO_H #undef HAVE_THREAD_LS @@ -2138,12 +2227,6 @@ extern void uITRON4_free(void *p) ; #ifndef WOLFSSL_SP_DIV_WORD_HALF #define WOLFSSL_SP_DIV_WORD_HALF #endif - #ifndef SP_HALF_SIZE - #define SP_HALF_SIZE 32 - #endif - #ifndef SP_HALF_MAX - #define SP_HALF_MAX 4294967295U - #endif #endif @@ -2154,18 +2237,23 @@ extern void uITRON4_free(void *p) ; #undef HAVE_GMTIME_R /* don't trust macro with windows */ #endif /* WOLFSSL_MYSQL_COMPATIBLE */ -#if defined(OPENSSL_ALL) || defined(WOLFSSL_NGINX) || defined(WOLFSSL_HAPROXY) +#if defined(OPENSSL_ALL) || defined(WOLFSSL_NGINX) || defined(WOLFSSL_HAPROXY) \ + || defined(HAVE_LIGHTY) #define SSL_OP_NO_COMPRESSION SSL_OP_NO_COMPRESSION #define OPENSSL_NO_ENGINE #define X509_CHECK_FLAG_ALWAYS_CHECK_SUBJECT #ifndef OPENSSL_EXTRA #define OPENSSL_EXTRA #endif - #ifndef HAVE_SESSION_TICKET + /* Session Tickets will be enabled when --enable-opensslall is used. + * Time is required for ticket expiration checking */ + #if !defined(HAVE_SESSION_TICKET) && !defined(NO_ASN_TIME) #define HAVE_SESSION_TICKET #endif + /* OCSP will be enabled in configure.ac when --enable-opensslall is used, + * but do not force all users to have it enabled. */ #ifndef HAVE_OCSP - #define HAVE_OCSP + /*#define HAVE_OCSP*/ #endif #ifndef KEEP_OUR_CERT #define KEEP_OUR_CERT @@ -2175,21 +2263,21 @@ extern void uITRON4_free(void *p) ; #endif #endif -#if defined(WOLFSSL_NGINX) || defined(WOLFSSL_QT) || defined(OPENSSL_ALL) +#ifdef HAVE_SNI #define SSL_CTRL_SET_TLSEXT_HOSTNAME 55 #endif /* both CURVE and ED small math should be enabled */ #ifdef CURVED25519_SMALL - #define CURVE25519_SMALL - #define ED25519_SMALL + #define CURVE25519_SMALL + #define ED25519_SMALL #endif /* both CURVE and ED small math should be enabled */ #ifdef CURVED448_SMALL - #define CURVE448_SMALL - #define ED448_SMALL + #define CURVE448_SMALL + #define ED448_SMALL #endif @@ -2214,9 +2302,14 @@ extern void uITRON4_free(void *p) ; #if defined(NO_OLD_WC_NAMES) || defined(OPENSSL_EXTRA) /* added to have compatibility with SHA256() */ - #if !defined(NO_OLD_SHA_NAMES) && !defined(HAVE_FIPS) + #if !defined(NO_OLD_SHA_NAMES) && (!defined(HAVE_FIPS) || \ + (defined(HAVE_FIPS_VERSION) && (HAVE_FIPS_VERSION > 2))) #define NO_OLD_SHA_NAMES #endif + #if !defined(NO_OLD_MD5_NAME) && (!defined(HAVE_FIPS) || \ + (defined(HAVE_FIPS_VERSION) && (HAVE_FIPS_VERSION > 2))) + #define NO_OLD_MD5_NAME + #endif #endif /* switch for compatibility layer functionality. Has subparts i.e. BIO/X509 @@ -2242,23 +2335,29 @@ extern void uITRON4_free(void *p) ; #endif /* support for disabling PEM to DER */ -#if !defined(WOLFSSL_NO_PEM) +#if !defined(WOLFSSL_NO_PEM) && !defined(NO_CODING) #undef WOLFSSL_PEM_TO_DER #define WOLFSSL_PEM_TO_DER #endif /* Parts of the openssl compatibility layer require peer certs */ -#if defined(OPENSSL_ALL) || defined(WOLFSSL_NGINX) || defined(WOLFSSL_HAPROXY) +#if defined(OPENSSL_ALL) || defined(WOLFSSL_NGINX) || defined(WOLFSSL_HAPROXY) \ + || defined(HAVE_LIGHTY) #undef KEEP_PEER_CERT #define KEEP_PEER_CERT #endif -/* RAW hash function APIs are not implemented with ARMv8 hardware acceleration*/ -#ifdef WOLFSSL_ARMASM +/* RAW hash function APIs are not implemented */ +#if defined(WOLFSSL_ARMASM) || defined(WOLFSSL_AFALG_HASH) #undef WOLFSSL_NO_HASH_RAW #define WOLFSSL_NO_HASH_RAW #endif +/* XChacha not implemented with ARM assembly ChaCha */ +#if defined(WOLFSSL_ARMASM) + #undef HAVE_XCHACHA +#endif + #if !defined(WOLFSSL_SHA384) && !defined(WOLFSSL_SHA512) && defined(NO_AES) && \ !defined(WOLFSSL_SHA3) #undef WOLFSSL_NO_WORD64_OPS @@ -2297,7 +2396,8 @@ extern void uITRON4_free(void *p) ; #if defined(WOLFCRYPT_ONLY) && defined(NO_AES) && !defined(WOLFSSL_SHA384) && \ !defined(WOLFSSL_SHA512) && defined(WC_NO_RNG) && \ - defined(WOLFSSL_SP_MATH) && defined(WOLFSSL_RSA_PUBLIC_ONLY) + (defined(WOLFSSL_SP_MATH) || defined(WOLFSSL_SP_MATH_ALL)) && \ + defined(WOLFSSL_RSA_PUBLIC_ONLY) #undef WOLFSSL_NO_FORCE_ZERO #define WOLFSSL_NO_FORCE_ZERO #endif @@ -2316,13 +2416,22 @@ extern void uITRON4_free(void *p) ; #endif #if defined(HAVE_EX_DATA) || defined(FORTRESS) + #ifndef MAX_EX_DATA #define MAX_EX_DATA 5 /* allow for five items of ex_data */ + #endif #endif #ifdef NO_WOLFSSL_SMALL_STACK #undef WOLFSSL_SMALL_STACK #endif +#ifdef WOLFSSL_SMALL_STACK_STATIC + #undef WOLFSSL_SMALL_STACK_STATIC + #define WOLFSSL_SMALL_STACK_STATIC static +#else + #define WOLFSSL_SMALL_STACK_STATIC +#endif + /* The client session cache requires time for timeout */ #if defined(NO_ASN_TIME) && !defined(NO_SESSION_CACHE) #define NO_SESSION_CACHE @@ -2350,6 +2459,60 @@ extern void uITRON4_free(void *p) ; #define NO_STRICT_ECDSA_LEN #endif +/* Do not allow using small stack with no malloc */ +#if defined(WOLFSSL_NO_MALLOC) && \ + (defined(WOLFSSL_SMALL_STACK) || defined(WOLFSSL_SMALL_STACK_CACHE)) + #error Small stack cannot be used with no malloc (WOLFSSL_NO_MALLOC) +#endif + +/* Enable DH Extra for QT, openssl all, openssh and static ephemeral */ +/* Allows export/import of DH key and params as DER */ +#if !defined(NO_DH) && !defined(WOLFSSL_DH_EXTRA) && \ + (defined(WOLFSSL_QT) || defined(OPENSSL_ALL) || defined(WOLFSSL_OPENSSH) || \ + defined(WOLFSSL_STATIC_EPHEMERAL)) + #define WOLFSSL_DH_EXTRA +#endif + +/* DH Extra is not supported on FIPS v1 or v2 (is missing DhKey .pub/.priv) */ +#if defined(WOLFSSL_DH_EXTRA) && defined(HAVE_FIPS) && \ + (!defined(HAVE_FIPS_VERSION) || HAVE_FIPS_VERSION <= 2) + #undef WOLFSSL_DH_EXTRA +#endif + +/* Check for insecure build combination: + * secure renegotiation [enabled] + * extended master secret [disabled] + * session resumption [enabled] + */ +#if defined(HAVE_SECURE_RENEGOTIATION) && !defined(HAVE_EXTENDED_MASTER) && \ + (defined(HAVE_SESSION_TICKET) || !defined(NO_SESSION_CACHE)) + /* secure renegotiation requires extended master secret with resumption */ + #ifndef _MSC_VER + #warning Extended master secret must be enabled with secure renegotiation and session resumption + #else + #pragma message("Warning: Extended master secret must be enabled with secure renegotiation and session resumption") + #endif + + /* Note: "--enable-renegotiation-indication" ("HAVE_RENEGOTIATION_INDICATION") + * only sends the secure renegotiation extension, but is not actually supported. + * This was added because some TLS peers required it even if not used, so we call + * this "(FAKE Secure Renegotiation)" + */ +#endif + + +/* --------------------------------------------------------------------------- + * Depricated Algorithm Handling + * Unless allowed via a build macro, disable support + * ---------------------------------------------------------------------------*/ + +/* RC4: Per RFC7465 Feb 2015, the cipher suite has been deprecated due to a + * number of exploits capable of decrypting portions of encrypted messages. */ +#ifndef WOLFSSL_ALLOW_RC4 + #undef NO_RC4 + #define NO_RC4 +#endif + #ifdef __cplusplus } /* extern "C" */ diff --git a/source/libwolfssl/wolfcrypt/sha.h b/source/libwolfssl/wolfcrypt/sha.h index 61267b63..0df25749 100644 --- a/source/libwolfssl/wolfcrypt/sha.h +++ b/source/libwolfssl/wolfcrypt/sha.h @@ -1,6 +1,6 @@ /* sha.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -27,13 +27,13 @@ #ifndef WOLF_CRYPT_SHA_H #define WOLF_CRYPT_SHA_H -#include +#include #ifndef NO_SHA #if defined(HAVE_FIPS) && \ defined(HAVE_FIPS_VERSION) && (HAVE_FIPS_VERSION >= 2) - #include + #include #endif /* HAVE_FIPS_VERSION >= 2 */ #if defined(HAVE_FIPS) && \ @@ -52,6 +52,10 @@ #include "fsl_ltc.h" #endif +#ifdef WOLFSSL_IMXRT_DCP + #include "fsl_dcp.h" +#endif + #ifdef __cplusplus extern "C" { #endif @@ -61,19 +65,19 @@ (defined(HAVE_FIPS_VERSION) && (HAVE_FIPS_VERSION >= 2)) #ifdef WOLFSSL_MICROCHIP_PIC32MZ - #include + #include #endif #ifdef STM32_HASH - #include + #include #endif #ifdef WOLFSSL_ASYNC_CRYPT - #include + #include #endif #ifdef WOLFSSL_ESP32WROOM32_CRYPT - #include + #include #endif -#ifdef WOLFSSL_IMXRT_DCP - #include +#if defined(WOLFSSL_SILABS_SE_ACCEL) + #include #endif #if !defined(NO_OLD_SHA_NAMES) @@ -99,13 +103,11 @@ enum { #if defined(WOLFSSL_TI_HASH) #include "wolfssl/wolfcrypt/port/ti/ti-hash.h" -#elif defined(WOLFSSL_IMX6_CAAM) +#elif defined(WOLFSSL_IMX6_CAAM) && !defined(WOLFSSL_QNX_CAAM) #include "wolfssl/wolfcrypt/port/caam/wolfcaam_sha.h" #elif defined(WOLFSSL_RENESAS_TSIP_CRYPT) && \ !defined(NO_WOLFSSL_RENESAS_TSIP_CRYPT_HASH) #include "wolfssl/wolfcrypt/port/Renesas/renesas-tsip-crypt.h" -#elif defined(WOLFSSL_PSOC6_CRYPTO) - #include "wolfssl/wolfcrypt/port/cypress/psoc6_crypto.h" #else /* Sha digest */ @@ -114,6 +116,11 @@ struct wc_Sha { ltc_hash_ctx_t ctx; #elif defined(STM32_HASH) STM32_HASH_Context stmCtx; +#elif defined(WOLFSSL_SILABS_SE_ACCEL) + wc_silabs_sha_t silabsCtx; +#elif defined(WOLFSSL_IMXRT_DCP) + dcp_handle_t handle; + dcp_hash_ctx_t ctx; #else word32 buffLen; /* in bytes */ word32 loLen; /* length in bytes */ @@ -164,6 +171,9 @@ WOLFSSL_API void wc_ShaFree(wc_Sha*); WOLFSSL_API int wc_ShaGetHash(wc_Sha*, byte*); WOLFSSL_API int wc_ShaCopy(wc_Sha*, wc_Sha*); +#if defined(OPENSSL_EXTRA) +WOLFSSL_API int wc_ShaTransform(wc_Sha*, const byte*); +#endif #ifdef WOLFSSL_PIC32MZ_HASH WOLFSSL_API void wc_ShaSizeSet(wc_Sha* sha, word32 len); diff --git a/source/libwolfssl/wolfcrypt/sha256.h b/source/libwolfssl/wolfcrypt/sha256.h index ee460d19..e85480d0 100644 --- a/source/libwolfssl/wolfcrypt/sha256.h +++ b/source/libwolfssl/wolfcrypt/sha256.h @@ -1,6 +1,6 @@ /* sha256.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -61,6 +61,16 @@ #include "fsl_ltc.h" #endif +#ifdef WOLFSSL_IMXRT_DCP + #include "fsl_dcp.h" +#endif + +#if defined(WOLFSSL_PSOC6_CRYPTO) +#include "cy_crypto_core_sha.h" +#include "cy_device_headers.h" +#include "cy_crypto_common.h" +#include "cy_crypto_core.h" +#endif #ifdef __cplusplus extern "C" { @@ -88,6 +98,9 @@ #if defined(WOLFSSL_CRYPTOCELL) #include #endif +#if defined(WOLFSSL_SILABS_SE_ACCEL) + #include +#endif #if defined(_MSC_VER) #define SHA256_NOINLINE __declspec(noinline) @@ -119,17 +132,13 @@ enum { #ifdef WOLFSSL_TI_HASH #include "wolfssl/wolfcrypt/port/ti/ti-hash.h" -#elif defined(WOLFSSL_IMX6_CAAM) +#elif defined(WOLFSSL_IMX6_CAAM) && !defined(WOLFSSL_QNX_CAAM) #include "wolfssl/wolfcrypt/port/caam/wolfcaam_sha.h" #elif defined(WOLFSSL_AFALG_HASH) #include "wolfssl/wolfcrypt/port/af_alg/afalg_hash.h" #elif defined(WOLFSSL_RENESAS_TSIP_CRYPT) && \ !defined(NO_WOLFSSL_RENESAS_TSIP_CRYPT_HASH) #include "wolfssl/wolfcrypt/port/Renesas/renesas-tsip-crypt.h" -#elif defined(WOLFSSL_PSOC6_CRYPTO) - #include "wolfssl/wolfcrypt/port/cypress/psoc6_crypto.h" -#elif defined(WOLFSSL_IMXRT_DCP) - #include #else /* wc_Sha256 digest */ @@ -138,6 +147,15 @@ struct wc_Sha256 { ltc_hash_ctx_t ctx; #elif defined(STM32_HASH_SHA2) STM32_HASH_Context stmCtx; +#elif defined(WOLFSSL_SILABS_SE_ACCEL) + wc_silabs_sha_t silabsCtx; +#elif defined(WOLFSSL_IMXRT_DCP) + dcp_handle_t handle; + dcp_hash_ctx_t ctx; +#elif defined(WOLFSSL_PSOC6_CRYPTO) + cy_stc_crypto_sha_state_t hash_state; + cy_en_crypto_sha_mode_t sha_mode; + cy_stc_crypto_v2_sha256_buffers_t sha_buffers; #else /* alignment on digest and buffer speeds up ARMv8 crypto operations */ ALIGN16 word32 digest[WC_SHA256_DIGEST_SIZE / sizeof(word32)]; @@ -193,7 +211,9 @@ WOLFSSL_API int wc_Sha256Update(wc_Sha256*, const byte*, word32); WOLFSSL_API int wc_Sha256FinalRaw(wc_Sha256*, byte*); WOLFSSL_API int wc_Sha256Final(wc_Sha256*, byte*); WOLFSSL_API void wc_Sha256Free(wc_Sha256*); - +#if defined(OPENSSL_EXTRA) +WOLFSSL_API int wc_Sha256Transform(wc_Sha256*, const byte*); +#endif WOLFSSL_API int wc_Sha256GetHash(wc_Sha256*, byte*); WOLFSSL_API int wc_Sha256Copy(wc_Sha256* src, wc_Sha256* dst); @@ -211,9 +231,12 @@ WOLFSSL_API void wc_Sha256SizeSet(wc_Sha256*, word32); #if !defined(HAVE_FIPS) || \ (defined(HAVE_FIPS_VERSION) && (HAVE_FIPS_VERSION >= 2)) +#if !defined(NO_OLD_SHA_NAMES) + #define SHA224 WC_SHA224 +#endif + #ifndef NO_OLD_WC_NAMES #define Sha224 wc_Sha224 - #define SHA224 WC_SHA224 #define SHA224_BLOCK_SIZE WC_SHA224_BLOCK_SIZE #define SHA224_DIGEST_SIZE WC_SHA224_DIGEST_SIZE #define SHA224_PAD_SIZE WC_SHA224_PAD_SIZE diff --git a/source/libwolfssl/wolfcrypt/sha3.h b/source/libwolfssl/wolfcrypt/sha3.h index f3287381..b75351fa 100644 --- a/source/libwolfssl/wolfcrypt/sha3.h +++ b/source/libwolfssl/wolfcrypt/sha3.h @@ -1,6 +1,6 @@ /* sha3.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -23,13 +23,13 @@ #ifndef WOLF_CRYPT_SHA3_H #define WOLF_CRYPT_SHA3_H -#include +#include #ifdef WOLFSSL_SHA3 #ifdef HAVE_FIPS /* for fips @wc_fips */ - #include + #include #endif #ifdef __cplusplus @@ -37,7 +37,7 @@ #endif #ifdef WOLFSSL_ASYNC_CRYPT - #include + #include #endif /* in bytes */ @@ -86,11 +86,11 @@ enum { #ifdef WOLFSSL_XILINX_CRYPT #include "wolfssl/wolfcrypt/port/xilinx/xil-sha3.h" #elif defined(WOLFSSL_AFALG_XILINX_SHA3) - #include + #include #else /* Sha3 digest */ -struct Sha3 { +struct wc_Sha3 { /* State data that is processed for each block. */ word64 s[25]; /* Unprocessed message data. */ @@ -109,7 +109,7 @@ struct Sha3 { }; #ifndef WC_SHA3_TYPE_DEFINED - typedef struct Sha3 wc_Sha3; + typedef struct wc_Sha3 wc_Sha3; #define WC_SHA3_TYPE_DEFINED #endif diff --git a/source/libwolfssl/wolfcrypt/sha512.h b/source/libwolfssl/wolfcrypt/sha512.h index e0244508..9547390a 100644 --- a/source/libwolfssl/wolfcrypt/sha512.h +++ b/source/libwolfssl/wolfcrypt/sha512.h @@ -1,6 +1,6 @@ /* sha512.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -27,14 +27,14 @@ #ifndef WOLF_CRYPT_SHA512_H #define WOLF_CRYPT_SHA512_H -#include +#include #if defined(WOLFSSL_SHA512) || defined(WOLFSSL_SHA384) #if defined(HAVE_FIPS) && \ defined(HAVE_FIPS_VERSION) && (HAVE_FIPS_VERSION >= 2) - #include + #include #endif /* HAVE_FIPS_VERSION >= 2 */ #if defined(HAVE_FIPS) && \ @@ -71,11 +71,21 @@ (defined(HAVE_FIPS_VERSION) && (HAVE_FIPS_VERSION >= 2)) #ifdef WOLFSSL_ASYNC_CRYPT - #include + #include #endif #ifdef WOLFSSL_ESP32WROOM32_CRYPT - #include + #include #endif +#if defined(WOLFSSL_SILABS_SE_ACCEL) + #include +#endif +#if defined(WOLFSSL_PSOC6_CRYPTO) + #include "cy_crypto_core_sha.h" + #include "cy_device_headers.h" + #include "cy_crypto_common.h" + #include "cy_crypto_core.h" +#endif + #if defined(_MSC_VER) #define SHA512_NOINLINE __declspec(noinline) #elif defined(__IAR_SYSTEMS_ICC__) || defined(__GNUC__) @@ -110,13 +120,16 @@ enum { }; -#ifdef WOLFSSL_IMX6_CAAM +#if defined(WOLFSSL_IMX6_CAAM) && !defined(WOLFSSL_QNX_CAAM) #include "wolfssl/wolfcrypt/port/caam/wolfcaam_sha.h" -#elif defined (WOLFSSL_PSOC6_CRYPTO) - #include "wolfssl/wolfcrypt/port/cypress/psoc6_crypto.h" #else /* wc_Sha512 digest */ struct wc_Sha512 { +#ifdef WOLFSSL_PSOC6_CRYPTO + cy_stc_crypto_sha_state_t hash_state; + cy_en_crypto_sha_mode_t sha_mode; + cy_stc_crypto_v2_sha512_buffers_t sha_buffers; +#else word64 digest[WC_SHA512_DIGEST_SIZE / sizeof(word64)]; word64 buffer[WC_SHA512_BLOCK_SIZE / sizeof(word64)]; word32 buffLen; /* in bytes */ @@ -136,9 +149,17 @@ struct wc_Sha512 { !defined(NO_WOLFSSL_ESP32WROOM32_CRYPT_HASH) WC_ESP32SHA ctx; #endif +#if defined(WOLFSSL_SILABS_SE_ACCEL) + wc_silabs_sha_t silabsCtx; +#endif +#ifdef WOLF_CRYPTO_CB + int devId; + void* devCtx; /* generic crypto callback context */ +#endif #if defined(WOLFSSL_HASH_FLAGS) || defined(WOLF_CRYPTO_CB) word32 flags; /* enum wc_HashFlags in hash.h */ #endif +#endif /* WOLFSSL_PSOC6_CRYPTO */ }; #ifndef WC_SHA512_TYPE_DEFINED @@ -172,6 +193,9 @@ WOLFSSL_API int wc_Sha512Copy(wc_Sha512* src, wc_Sha512* dst); WOLFSSL_API int wc_Sha512GetFlags(wc_Sha512* sha512, word32* flags); #endif +#if defined(OPENSSL_EXTRA) +WOLFSSL_API int wc_Sha512Transform(wc_Sha512* sha, const unsigned char* data); +#endif #endif /* WOLFSSL_SHA512 */ #if defined(WOLFSSL_SHA384) diff --git a/source/libwolfssl/wolfcrypt/signature.h b/source/libwolfssl/wolfcrypt/signature.h index f1f53887..39748070 100644 --- a/source/libwolfssl/wolfcrypt/signature.h +++ b/source/libwolfssl/wolfcrypt/signature.h @@ -1,6 +1,6 @@ /* signature.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -27,9 +27,9 @@ #ifndef WOLF_CRYPT_SIGNATURE_H #define WOLF_CRYPT_SIGNATURE_H -#include -#include -#include +#include +#include +#include #ifdef __cplusplus extern "C" { diff --git a/source/libwolfssl/wolfcrypt/sp.h b/source/libwolfssl/wolfcrypt/sp.h index 837792e8..052871c5 100644 --- a/source/libwolfssl/wolfcrypt/sp.h +++ b/source/libwolfssl/wolfcrypt/sp.h @@ -1,6 +1,6 @@ /* sp.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -23,19 +23,25 @@ #ifndef WOLF_CRYPT_SP_H #define WOLF_CRYPT_SP_H -#include +#include #if defined(WOLFSSL_HAVE_SP_RSA) || defined(WOLFSSL_HAVE_SP_DH) || \ defined(WOLFSSL_HAVE_SP_ECC) - -#ifndef WOLFSSL_LINUXKM -#include +#ifdef _WIN32_WCE + typedef __int8 int8_t; + typedef __int32 int32_t; + typedef __int64 int64_t; + typedef unsigned __int8 uint8_t; + typedef unsigned __int32 uint32_t; + typedef unsigned __int64 uint64_t; +#elif !defined(WOLFSSL_LINUXKM) + #include #endif -#include -#include +#include +#include -#include +#include #ifdef noinline #define SP_NOINLINE noinline @@ -56,6 +62,10 @@ #ifdef WOLFSSL_HAVE_SP_RSA +/* non-const versions only needed for inlined ARM assembly */ +#if defined(HAVE_FIPS_VERSION) && HAVE_FIPS_VERSION == 2 \ + && ( defined(WOLFSSL_SP_ARM32_ASM) || defined(WOLFSSL_SP_ARM64_ASM) ) + WOLFSSL_LOCAL int sp_RsaPublic_2048(const byte* in, word32 inLen, mp_int* em, mp_int* mm, byte* out, word32* outLen); WOLFSSL_LOCAL int sp_RsaPrivate_2048(const byte* in, word32 inLen, @@ -74,10 +84,39 @@ WOLFSSL_LOCAL int sp_RsaPrivate_4096(const byte* in, word32 inLen, mp_int* dm, mp_int* pm, mp_int* qm, mp_int* dpm, mp_int* dqm, mp_int* qim, mp_int* mm, byte* out, word32* outLen); +#else + +WOLFSSL_LOCAL int sp_RsaPublic_2048(const byte* in, word32 inLen, + const mp_int* em, const mp_int* mm, byte* out, word32* outLen); +WOLFSSL_LOCAL int sp_RsaPrivate_2048(const byte* in, word32 inLen, + const mp_int* dm, const mp_int* pm, const mp_int* qm, const mp_int* dpm, + const mp_int* dqm, const mp_int* qim, const mp_int* mm, byte* out, + word32* outLen); + +WOLFSSL_LOCAL int sp_RsaPublic_3072(const byte* in, word32 inLen, + const mp_int* em, const mp_int* mm, byte* out, word32* outLen); +WOLFSSL_LOCAL int sp_RsaPrivate_3072(const byte* in, word32 inLen, + const mp_int* dm, const mp_int* pm, const mp_int* qm, const mp_int* dpm, + const mp_int* dqm, const mp_int* qim, const mp_int* mm, byte* out, + word32* outLen); + +WOLFSSL_LOCAL int sp_RsaPublic_4096(const byte* in, word32 inLen, + const mp_int* em, const mp_int* mm, byte* out, word32* outLen); +WOLFSSL_LOCAL int sp_RsaPrivate_4096(const byte* in, word32 inLen, + const mp_int* dm, const mp_int* pm, const mp_int* qm, const mp_int* dpm, + const mp_int* dqm, const mp_int* qim, const mp_int* mm, byte* out, + word32* outLen); + +#endif /* HAVE_FIPS_VERSION && HAVE_FIPS_VERSION == 2 && !WOLFSSL_SP_ARM[32|64]_ASM */ + #endif /* WOLFSSL_HAVE_SP_RSA */ #if defined(WOLFSSL_HAVE_SP_DH) || defined(WOLFSSL_HAVE_SP_RSA) +/* non-const versions only needed for inlined ARM assembly */ +#if defined(HAVE_FIPS_VERSION) && HAVE_FIPS_VERSION == 2 \ + && ( defined(WOLFSSL_SP_ARM32_ASM) || defined(WOLFSSL_SP_ARM64_ASM) ) + WOLFSSL_LOCAL int sp_ModExp_1024(mp_int* base, mp_int* exp, mp_int* mod, mp_int* res); WOLFSSL_LOCAL int sp_ModExp_1536(mp_int* base, mp_int* exp, mp_int* mod, @@ -89,10 +128,29 @@ WOLFSSL_LOCAL int sp_ModExp_3072(mp_int* base, mp_int* exp, mp_int* mod, WOLFSSL_LOCAL int sp_ModExp_4096(mp_int* base, mp_int* exp, mp_int* mod, mp_int* res); +#else + +WOLFSSL_LOCAL int sp_ModExp_1024(const mp_int* base, const mp_int* exp, + const mp_int* mod, mp_int* res); +WOLFSSL_LOCAL int sp_ModExp_1536(const mp_int* base, const mp_int* exp, + const mp_int* mod, mp_int* res); +WOLFSSL_LOCAL int sp_ModExp_2048(const mp_int* base, const mp_int* exp, + const mp_int* mod, mp_int* res); +WOLFSSL_LOCAL int sp_ModExp_3072(const mp_int* base, const mp_int* exp, + const mp_int* mod, mp_int* res); +WOLFSSL_LOCAL int sp_ModExp_4096(const mp_int* base, const mp_int* exp, + const mp_int* mod, mp_int* res); + +#endif /* HAVE_FIPS_VERSION && HAVE_FIPS_VERSION == 2 && !WOLFSSL_SP_ARM[32|64]_ASM */ + #endif #ifdef WOLFSSL_HAVE_SP_DH +/* non-const versions only needed for inlined ARM assembly */ +#if defined(HAVE_FIPS_VERSION) && HAVE_FIPS_VERSION == 2 \ + && ( defined(WOLFSSL_SP_ARM32_ASM) || defined(WOLFSSL_SP_ARM64_ASM) ) + WOLFSSL_LOCAL int sp_DhExp_2048(mp_int* base, const byte* exp, word32 expLen, mp_int* mod, byte* out, word32* outLen); WOLFSSL_LOCAL int sp_DhExp_3072(mp_int* base, const byte* exp, word32 expLen, @@ -100,10 +158,25 @@ WOLFSSL_LOCAL int sp_DhExp_3072(mp_int* base, const byte* exp, word32 expLen, WOLFSSL_LOCAL int sp_DhExp_4096(mp_int* base, const byte* exp, word32 expLen, mp_int* mod, byte* out, word32* outLen); +#else + +WOLFSSL_LOCAL int sp_DhExp_2048(const mp_int* base, const byte* exp, + word32 expLen, const mp_int* mod, byte* out, word32* outLen); +WOLFSSL_LOCAL int sp_DhExp_3072(const mp_int* base, const byte* exp, + word32 expLen, const mp_int* mod, byte* out, word32* outLen); +WOLFSSL_LOCAL int sp_DhExp_4096(const mp_int* base, const byte* exp, + word32 expLen, const mp_int* mod, byte* out, word32* outLen); + +#endif /* HAVE_FIPS_VERSION && HAVE_FIPS_VERSION == 2 && !WOLFSSL_SP_ARM[32|64]_ASM */ + #endif /* WOLFSSL_HAVE_SP_DH */ #ifdef WOLFSSL_HAVE_SP_ECC +/* non-const versions only needed for inlined ARM assembly */ +#if defined(HAVE_FIPS_VERSION) && HAVE_FIPS_VERSION == 2 \ + && ( defined(WOLFSSL_SP_ARM32_ASM) || defined(WOLFSSL_SP_ARM64_ASM) ) + int sp_ecc_mulmod_256(mp_int* km, ecc_point* gm, ecc_point* rm, int map, void* heap); int sp_ecc_mulmod_base_256(mp_int* km, ecc_point* rm, int map, void* heap); @@ -147,15 +220,94 @@ int sp_ecc_proj_dbl_point_384(mp_int* pX, mp_int* pY, mp_int* pZ, int sp_ecc_map_384(mp_int* pX, mp_int* pY, mp_int* pZ); int sp_ecc_uncompress_384(mp_int* xm, int odd, mp_int* ym); +#else + +int sp_ecc_mulmod_256(const mp_int* km, const ecc_point* gm, ecc_point* rm, + int map, void* heap); +int sp_ecc_mulmod_add_256(const mp_int* km, const ecc_point* gm, + const ecc_point* am, int inMont, ecc_point* rm, int map, void* heap); +int sp_ecc_mulmod_base_256(const mp_int* km, ecc_point* rm, int map, + void* heap); +int sp_ecc_mulmod_base_add_256(const mp_int* km, const ecc_point* am, + int inMont, ecc_point* rm, int map, void* heap); + +int sp_ecc_make_key_256(WC_RNG* rng, mp_int* priv, ecc_point* pub, void* heap); +int sp_ecc_secret_gen_256(const mp_int* priv, const ecc_point* pub, byte* out, + word32* outlen, void* heap); +int sp_ecc_sign_256(const byte* hash, word32 hashLen, WC_RNG* rng, + const mp_int* priv, mp_int* rm, mp_int* sm, mp_int* km, void* heap); +int sp_ecc_verify_256(const byte* hash, word32 hashLen, const mp_int* pX, + const mp_int* pY, const mp_int* pZ, const mp_int* r, const mp_int* sm, + int* res, void* heap); +int sp_ecc_is_point_256(const mp_int* pX, const mp_int* pY); +int sp_ecc_check_key_256(const mp_int* pX, const mp_int* pY, + const mp_int* privm, void* heap); +int sp_ecc_proj_add_point_256(mp_int* pX, mp_int* pY, mp_int* pZ, + mp_int* qX, mp_int* qY, mp_int* qZ, mp_int* rX, mp_int* rY, mp_int* rZ); +int sp_ecc_proj_dbl_point_256(mp_int* pX, mp_int* pY, mp_int* pZ, + mp_int* rX, mp_int* rY, mp_int* rZ); +int sp_ecc_map_256(mp_int* pX, mp_int* pY, mp_int* pZ); +int sp_ecc_uncompress_256(mp_int* xm, int odd, mp_int* ym); + +int sp_ecc_mulmod_384(const mp_int* km, const ecc_point* gm, ecc_point* rm, + int map, void* heap); +int sp_ecc_mulmod_add_384(const mp_int* km, const ecc_point* gm, + const ecc_point* am, int inMont, ecc_point* rm, int map, void* heap); +int sp_ecc_mulmod_base_384(const mp_int* km, ecc_point* rm, int map, + void* heap); +int sp_ecc_mulmod_base_add_384(const mp_int* km, const ecc_point* am, + int inMont, ecc_point* rm, int map, void* heap); + +int sp_ecc_make_key_384(WC_RNG* rng, mp_int* priv, ecc_point* pub, void* heap); +int sp_ecc_secret_gen_384(const mp_int* priv, const ecc_point* pub, byte* out, + word32* outlen, void* heap); +int sp_ecc_sign_384(const byte* hash, word32 hashLen, WC_RNG* rng, + const mp_int* priv, mp_int* rm, mp_int* sm, mp_int* km, void* heap); +int sp_ecc_verify_384(const byte* hash, word32 hashLen, const mp_int* pX, + const mp_int* pY, const mp_int* pZ, const mp_int* r, const mp_int* sm, + int* res, void* heap); +int sp_ecc_is_point_384(const mp_int* pX, const mp_int* pY); +int sp_ecc_check_key_384(const mp_int* pX, const mp_int* pY, + const mp_int* privm, void* heap); +int sp_ecc_proj_add_point_384(mp_int* pX, mp_int* pY, mp_int* pZ, + mp_int* qX, mp_int* qY, mp_int* qZ, mp_int* rX, mp_int* rY, mp_int* rZ); +int sp_ecc_proj_dbl_point_384(mp_int* pX, mp_int* pY, mp_int* pZ, + mp_int* rX, mp_int* rY, mp_int* rZ); +int sp_ecc_map_384(mp_int* pX, mp_int* pY, mp_int* pZ); +int sp_ecc_uncompress_384(mp_int* xm, int odd, mp_int* ym); + +int sp_ecc_mulmod_1024(const mp_int* km, const ecc_point* gm, ecc_point* rm, + int map, void* heap); +int sp_ecc_mulmod_base_1024(const mp_int* km, ecc_point* rm, int map, + void* heap); +int sp_ecc_mulmod_base_add_1024(const mp_int* km, const ecc_point* am, + int inMont, ecc_point* rm, int map, void* heap); +int sp_ecc_gen_table_1024(const ecc_point* gm, byte* table, word32* len, + void* heap); +int sp_ecc_mulmod_table_1024(const mp_int* km, const ecc_point* gm, byte* table, + ecc_point* r, int map, void* heap); +int sp_ModExp_Fp_star_1024(const mp_int* base, mp_int* exp, mp_int* res); +int sp_Pairing_1024(const ecc_point* p, const ecc_point* q, mp_int* res); +int sp_Pairing_gen_precomp_1024(const ecc_point* p, byte* table, word32* len); +int sp_Pairing_precomp_1024(const ecc_point* p, const ecc_point* q, mp_int* res, + const byte* table, word32 len); +int sp_ecc_is_point_1024(const mp_int* pX, const mp_int* pY); +int sp_ecc_check_key_1024(const mp_int* pX, const mp_int* pY, + const mp_int* privm, void* heap); + +#endif /* HAVE_FIPS_VERSION && HAVE_FIPS_VERSION == 2 && !WOLFSSL_SP_ARM[32|64]_ASM */ + #ifdef WOLFSSL_SP_NONBLOCK -int sp_ecc_sign_256_nb(sp_ecc_ctx_t* ctx, const byte* hash, word32 hashLen, WC_RNG* rng, mp_int* priv, - mp_int* rm, mp_int* sm, mp_int* km, void* heap); -int sp_ecc_verify_256_nb(sp_ecc_ctx_t* ctx, const byte* hash, word32 hashLen, mp_int* pX, mp_int* pY, - mp_int* pZ, mp_int* r, mp_int* sm, int* res, void* heap); -int sp_ecc_sign_384_nb(sp_ecc_ctx_t* ctx, const byte* hash, word32 hashLen, WC_RNG* rng, mp_int* priv, - mp_int* rm, mp_int* sm, mp_int* km, void* heap); -int sp_ecc_verify_384_nb(sp_ecc_ctx_t* ctx, const byte* hash, word32 hashLen, mp_int* pX, mp_int* pY, - mp_int* pZ, mp_int* r, mp_int* sm, int* res, void* heap); +int sp_ecc_sign_256_nb(sp_ecc_ctx_t* ctx, const byte* hash, word32 hashLen, + WC_RNG* rng, mp_int* priv, mp_int* rm, mp_int* sm, mp_int* km, void* heap); +int sp_ecc_verify_256_nb(sp_ecc_ctx_t* ctx, const byte* hash, word32 hashLen, + const mp_int* pX, const mp_int* pY, const mp_int* pZ, const mp_int* r, + const mp_int* sm, int* res, void* heap); +int sp_ecc_sign_384_nb(sp_ecc_ctx_t* ctx, const byte* hash, word32 hashLen, + WC_RNG* rng, mp_int* priv, mp_int* rm, mp_int* sm, mp_int* km, void* heap); +int sp_ecc_verify_384_nb(sp_ecc_ctx_t* ctx, const byte* hash, word32 hashLen, + const mp_int* pX, const mp_int* pY, const mp_int* pZ, const mp_int* r, + const mp_int* sm, int* res, void* heap); #endif /* WOLFSSL_SP_NONBLOCK */ #endif /* WOLFSSL_HAVE_SP_ECC */ diff --git a/source/libwolfssl/wolfcrypt/sp_int.h b/source/libwolfssl/wolfcrypt/sp_int.h index 694107e0..92672621 100644 --- a/source/libwolfssl/wolfcrypt/sp_int.h +++ b/source/libwolfssl/wolfcrypt/sp_int.h @@ -1,6 +1,6 @@ /* sp_int.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -28,9 +28,124 @@ This library provides single precision (SP) integer math functions. #define WOLF_CRYPT_SP_INT_H #ifndef WOLFSSL_LINUXKM -#include #include #endif +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Find smallest type for smallest bits. */ +#if UCHAR_MAX == 255 + #define SP_UCHAR_BITS 8 + + typedef unsigned char sp_uint8; + typedef char sp_int8; +#elif UCHAR_MAX == 127 + #define SP_UCHAR_BITS 7 + + typedef unsigned char sp_uint7; + typedef char sp_int7; +#else + #error "Size of unsigned short not detected" +#endif + +#if USHRT_MAX == 65535 + #define SP_USHORT_BITS 16 + + typedef unsigned short sp_uint16; + typedef short sp_int16; +#elif USHRT_MAX == 255 + #define SP_USHORT_BITS 8 + + #if USHRT_MAX > UCHAR_MAX + typedef unsigned short sp_uint8; + typedef short sp_int8; + #endif +#else + #error "Size of unsigned short not detected" +#endif + +#if UINT_MAX == 4294967295UL + #define SP_UINT_BITS 32 + + typedef unsigned int sp_uint32; + typedef int sp_int32; +#elif UINT_MAX == 65535 + #define SP_UINT_BITS 16 + + #if UINT_MAX > USHRT_MAX + typedef unsigned int sp_uint16; + typedef int sp_int16; + #endif +#elif UINT_MAX == 255 + #define SP_UINT_BITS 8 + + #if UINT_MAX > USHRT_MAX + typedef unsigned int sp_uint8; + typedef int sp_int8; + #endif +#else + #error "Size of unsigned int not detected" +#endif + +#if ULONG_MAX == 18446744073709551615UL + #define SP_ULONG_BITS 64 + + typedef unsigned long sp_uint64; + typedef long sp_int64; +#elif ULONG_MAX == 4294967295UL + #define SP_ULONG_BITS 32 + + #if ULONG_MAX > UINT_MAX + typedef unsigned long sp_uint32; + typedef long sp_int32; + #endif +#elif ULONG_MAX == 65535 + #define SP_ULONG_BITS 16 + + #if ULONG_MAX > UINT_MAX + typedef unsigned long sp_uint16; + typedef long sp_int16; + #endif +#else + #error "Size of unsigned long not detected" +#endif + +#ifdef ULLONG_MAX + #if ULLONG_MAX == 18446744073709551615ULL + #define SP_ULLONG_BITS 64 + + #if SP_ULLONG_BITS > SP_ULONG_BITS + typedef unsigned long long sp_uint64; + typedef long long sp_int64; + #endif + #elif ULLONG_MAX == 4294967295UL + #define SP_ULLONG_BITS 32 + + #if SP_ULLONG_BITS > SP_ULONG_BITS + typedef unsigned long long sp_uint32; + typedef long long sp_int32; + #endif + #elif ULLONG_MAX == 65535 + #define SP_ULLONG_BITS 16 + + #if SP_ULLONG_BITS > SP_ULONG_BITS + typedef unsigned long long sp_uint16; + typedef long long sp_int16; + #endif + #else + #error "Size of unsigned long long not detected" + #endif +#else + #define SP_ULLONG_BITS 0 +#endif + + +#ifdef WOLFSSL_SP_DIV_32 +#define WOLFSSL_SP_DIV_WORD_HALF +#endif /* Make sure WOLFSSL_SP_ASM build option defined when requested */ #if !defined(WOLFSSL_SP_ASM) && ( \ @@ -41,19 +156,54 @@ This library provides single precision (SP) integer math functions. #endif -#ifdef WOLFSSL_SP_X86_64_ASM - #define SP_WORD_SIZE 64 - - #define HAVE_INTEL_AVX1 - #define HAVE_INTEL_AVX2 -#elif defined(WOLFSSL_SP_ARM64_ASM) - #define SP_WORD_SIZE 64 -#elif defined(WOLFSSL_SP_ARM32_ASM) +/* Determine the number of bits to use in each word. */ +#ifdef SP_WORD_SIZE +#elif defined(WOLFSSL_DSP_BUILD) #define SP_WORD_SIZE 32 -#elif defined(WOLFSSL_SP_ARM_THUMB_ASM) +#elif defined(WOLFSSL_SP_X86_64) && !defined(WOLFSSL_SP_X86_64_ASM) && \ + !defined(HAVE___UINT128_T) #define SP_WORD_SIZE 32 +#elif defined(WOLFSSL_SP_X86_64_ASM) || defined(WOLFSSL_SP_X86_64) + #if SP_ULONG_BITS == 64 || SP_ULLONG_BITS == 64 + #define SP_WORD_SIZE 64 + #define HAVE_INTEL_AVX1 + #ifndef NO_AVX2_SUPPORT + #define HAVE_INTEL_AVX2 + #endif + #elif SP_ULONG_BITS == 32 + #define SP_WORD_SIZE 32 + #undef WOLFSSL_SP_ASM + #elif SP_ULONG_BITS == 16 + #define SP_WORD_SIZE 16 + #undef WOLFSSL_SP_ASM + #endif +#elif defined(WOLFSSL_SP_X86) + #define SP_WORD_SIZE 32 +#elif defined(WOLFSSL_SP_ARM64_ASM) || defined(WOLFSSL_SP_ARM64) + #define SP_WORD_SIZE 64 +#elif defined(WOLFSSL_SP_ARM32_ASM) || defined(WOLFSSL_SP_ARM32) + #define SP_WORD_SIZE 32 +#elif defined(WOLFSSL_SP_ARM_THUMB_ASM) || defined(WOLFSSL_SP_ARM_THUMB) + #define SP_WORD_SIZE 32 +#elif defined(WOLFSSL_SP_PPC) + #define SP_WORD_SIZE 32 +#elif defined(WOLFSSL_SP_PPC64) + #define SP_WORD_SIZE 64 +#elif defined(WOLFSSL_SP_MIPS) + #define SP_WORD_SIZE 32 +#elif defined(WOLFSSL_SP_MIPS64) + #define SP_WORD_SIZE 64 +#elif defined(WOLFSSL_SP_RISCV32) + #define SP_WORD_SIZE 32 +#elif defined(WOLFSSL_SP_RISCV64) + #define SP_WORD_SIZE 64 +#elif defined(WOLFSSL_SP_S390X) + #define SP_WORD_SIZE 64 #endif +/* If no predefined or assembly required size then use maximum available + * with compiler. + */ #ifndef SP_WORD_SIZE #if defined(NO_64BIT) || !defined(HAVE___UINT128_T) #define SP_WORD_SIZE 32 @@ -62,63 +212,130 @@ This library provides single precision (SP) integer math functions. #endif #endif -#ifdef WOLFSSL_DSP_BUILD - typedef int32 sp_digit; - typedef uint32 sp_int_digit; - typedef uint64 sp_int_word; - typedef int64 sp_int_sword; - #undef SP_WORD_SIZE - #define SP_WORD_SIZE 32 -#elif !defined(WOLFSSL_SP_ASM) - #if SP_WORD_SIZE == 32 - typedef int32_t sp_digit; - typedef uint32_t sp_int_digit; - typedef uint64_t sp_int_word; - typedef int64_t sp_int_sword; - #elif SP_WORD_SIZE == 64 - typedef int64_t sp_digit; - typedef uint64_t sp_int_digit; +/* Number of bytes in each word. */ +#define SP_WORD_SIZEOF (SP_WORD_SIZE / 8) + +/* Define the types used. */ +#ifdef HAVE___UINT128_T #ifdef __SIZEOF_INT128__ - typedef __uint128_t uint128_t; - typedef __int128_t int128_t; + typedef __uint128_t sp_uint128; + typedef __int128_t sp_int128; #else - typedef unsigned long uint128_t __attribute__ ((mode(TI))); - typedef long int128_t __attribute__ ((mode(TI))); + typedef unsigned long sp_uint128 __attribute__ ((mode(TI))); + typedef long sp_int128 __attribute__ ((mode(TI))); #endif - typedef uint128_t sp_int_word; - typedef int128_t sp_int_sword; - #endif -#else - #if SP_WORD_SIZE == 32 - typedef uint32_t sp_digit; - typedef uint32_t sp_int_digit; - typedef uint64_t sp_int_word; - typedef int64_t sp_int_sword; - #elif SP_WORD_SIZE == 64 - typedef uint64_t sp_digit; - typedef uint64_t sp_int_digit; - #ifdef __SIZEOF_INT128__ - typedef __uint128_t uint128_t; - typedef __int128_t int128_t; - #else - typedef unsigned long uint128_t __attribute__ ((mode(TI))); - typedef long int128_t __attribute__ ((mode(TI))); + #ifndef WOLFSSL_UINT128_T_DEFINED + #ifdef __SIZEOF_INT128__ + typedef __uint128_t uint128_t; + typedef __int128_t int128_t; + #else + typedef unsigned long uint128_t __attribute__ ((mode(TI))); + typedef long int128_t __attribute__ ((mode(TI))); + #endif + #define WOLFSSL_UINT128_T_DEFINED #endif - typedef uint128_t sp_int_word; - typedef int128_t sp_int_sword; - #endif #endif -#if SP_WORD_SIZE == 32 - #define SP_MASK ((sp_int_digit)0xffffffffU) +#if SP_WORD_SIZE == 8 + typedef sp_uint8 sp_int_digit; + typedef sp_int8 sp_sint_digit; + typedef sp_uint16 sp_int_word; + typedef sp_int16 sp_int_sword; + + #define SP_MASK 0xffU +#elif SP_WORD_SIZE == 16 + typedef sp_uint16 sp_int_digit; + typedef sp_int16 sp_sint_digit; + typedef sp_uint32 sp_int_word; + typedef sp_int32 sp_int_sword; + + #define SP_MASK 0xffffU +#elif SP_WORD_SIZE == 32 + typedef sp_uint32 sp_int_digit; + typedef sp_int32 sp_sint_digit; + typedef sp_uint64 sp_int_word; + typedef sp_int64 sp_int_sword; + + #define SP_MASK 0xffffffffU #elif SP_WORD_SIZE == 64 - #define SP_MASK ((sp_int_digit)0xffffffffffffffffUL) + typedef sp_uint64 sp_int_digit; + typedef sp_int64 sp_sint_digit; +#if defined(WOLFSSL_SP_MATH) || defined(WOLFSSL_SP_MATH_ALL) + typedef sp_uint128 sp_int_word; + typedef sp_int128 sp_int_sword; +#endif + + #define SP_MASK 0xffffffffffffffffUL #else #error Word size not defined #endif +/* Define an SP digit. */ +#ifndef WOLFSSL_SP_ASM + /* SP C code uses n/m bits and therefore needs a signed type. */ + #if SP_WORD_SIZE == 8 + typedef sp_int8 sp_digit; + #elif SP_WORD_SIZE == 16 + typedef sp_int16 sp_digit; + #elif SP_WORD_SIZE == 32 + typedef sp_int32 sp_digit; + #elif SP_WORD_SIZE == 64 + typedef sp_int64 sp_digit; + #endif +#else + /* SP ASM code uses full size and needs an unsigned type. */ + #if SP_WORD_SIZE == 8 + typedef sp_uint8 sp_digit; + #elif SP_WORD_SIZE == 16 + typedef sp_uint16 sp_digit; + #elif SP_WORD_SIZE == 32 + typedef sp_uint32 sp_digit; + #elif SP_WORD_SIZE == 64 + typedef sp_uint64 sp_digit; + #endif +#endif + +/** Number of bits in a half a word. */ +#define SP_HALF_SIZE (SP_WORD_SIZE / 2) +/** Maximum value that can be held in a half a word. */ +#define SP_HALF_MAX (((sp_digit)1 << SP_HALF_SIZE) - 1) +/** Maximum value that can be held in a word. */ +#define SP_DIGIT_MAX SP_MASK +/* Number of bits to shift to divide by word size. */ +#if SP_WORD_SIZE == 8 + #define SP_WORD_SHIFT 3 +#elif SP_WORD_SIZE == 16 + #define SP_WORD_SHIFT 4 +#elif SP_WORD_SIZE == 32 + #define SP_WORD_SHIFT 5 +#elif SP_WORD_SIZE == 64 + #define SP_WORD_SHIFT 6 +#endif +/* Mask of word size. */ +#define SP_WORD_MASK (SP_WORD_SIZE - 1) + +/* For debugging only - format string for different digit sizes. */ +#if SP_WORD_SIZE == 64 + #if SP_ULONG_BITS == 64 + #define SP_PRINT_FMT "%016lx" + #else + #define SP_PRINT_FMT "%016llx" + #endif +#elif SP_WORD_SIZE == 32 + #if SP_UINT_BITS == 32 + #define SP_PRINT_FMT "%08x" + #else + #define SP_PRINT_FMT "%08lx" + #endif +#elif SP_WORD_SIZE == 16 + #define SP_PRINT_FMT "%04x" +#elif SP_WORD_SIZE == 8 + #define SP_PRINT_FMT "%02x" +#endif + #if defined(WOLFSSL_HAVE_SP_ECC) && defined(WOLFSSL_SP_NONBLOCK) +/* Non-blocking ECC operation context. */ typedef struct sp_ecc_ctx { #ifdef WOLFSSL_SP_384 byte data[48*80]; /* stack data */ @@ -128,186 +345,658 @@ typedef struct sp_ecc_ctx { } sp_ecc_ctx_t; #endif -#ifdef WOLFSSL_SP_MATH -#include +#if defined(WOLFSSL_SP_MATH) || defined(WOLFSSL_SP_MATH_ALL) +#include -#if !defined(WOLFSSL_HAVE_SP_RSA) && !defined(WOLFSSL_HAVE_SP_DH) - #if !defined(NO_PWDBASED) && defined(WOLFSSL_SHA512) - #define SP_INT_DIGITS ((512 + SP_WORD_SIZE) / SP_WORD_SIZE) - #elif defined(WOLFSSL_SP_384) - #define SP_INT_DIGITS ((384 + SP_WORD_SIZE) / SP_WORD_SIZE) +#ifdef SP_INT_BITS + /* Calculate number of digits to have in an sp_int based maximum size of + * numbers in bits that will be used. + * Double the size to hold multiplication result. + * Add one to accommodate extra digit used by sp_mul(), sp_mulmod(), sp_sqr(), and sp_sqrmod(). + */ + #define SP_INT_DIGITS \ + ((((SP_INT_BITS + (SP_WORD_SIZE - 1)) * 2 + SP_WORD_SIZE) / SP_WORD_SIZE) + 1) +#endif + +#ifndef SP_INT_DIGITS + /* Calculate number of digits to have in an sp_int based on features + * compiled in. + */ + #if !defined(WOLFSSL_HAVE_SP_RSA) && !defined(WOLFSSL_HAVE_SP_DH) && \ + !defined(WOLFSSL_HAVE_SP_ECC) + #if !defined(NO_RSA) || !defined(NO_DH) || !defined(NO_DSA) + #define SP_INT_DIGITS (((6144 + SP_WORD_SIZE) / SP_WORD_SIZE) + 1) + #elif defined(WOLFCRYPT_HAVE_SAKKE) + #define SP_INT_DIGITS \ + (((2 * (1024 + SP_WORD_SIZE) + SP_WORD_SIZE) / SP_WORD_SIZE) + 1) + #elif defined(HAVE_ECC) + #define SP_INT_DIGITS \ + (((2 * ( 521 + SP_WORD_SIZE) + SP_WORD_SIZE) / SP_WORD_SIZE) + 1) + #elif !defined(NO_PWDBASED) && defined(WOLFSSL_SHA512) + #define SP_INT_DIGITS ((( 512 + SP_WORD_SIZE) / SP_WORD_SIZE) + 1) + #else + #define SP_INT_DIGITS ((( 256 + SP_WORD_SIZE) / SP_WORD_SIZE) + 1) + #endif + #elif !defined(WOLFSSL_HAVE_SP_RSA) && !defined(WOLFSSL_HAVE_SP_DH) + #if defined(WOLFCRYPT_HAVE_SAKKE) + #define SP_INT_DIGITS \ + (((2 * (1024 + SP_WORD_SIZE) + SP_WORD_SIZE) / SP_WORD_SIZE) + 1) + #elif defined(WOLFSSL_SP_MATH_ALL) + #define SP_INT_DIGITS \ + (((2 * ( 521 + SP_WORD_SIZE) + SP_WORD_SIZE) / SP_WORD_SIZE) + 1) + #elif defined(WOLFSSL_SP_384) + #define SP_INT_DIGITS ((( 768 + SP_WORD_SIZE) / SP_WORD_SIZE) + 1) + #else + #define SP_INT_DIGITS ((( 512 + SP_WORD_SIZE) / SP_WORD_SIZE) + 1) + #endif + #elif defined(WOLFSSL_SP_4096) + #if defined(WOLFSSL_HAVE_SP_DH) + #define SP_INT_DIGITS (((8192 + SP_WORD_SIZE) / SP_WORD_SIZE) + 1) + #else + #define SP_INT_DIGITS (((4096 + SP_WORD_SIZE) / SP_WORD_SIZE) + 1) + #endif + #elif !defined(WOLFSSL_SP_NO_3072) + #if defined(WOLFSSL_HAVE_SP_DH) + #define SP_INT_DIGITS (((6144 + SP_WORD_SIZE) / SP_WORD_SIZE) + 1) + #else + #define SP_INT_DIGITS (((3072 + SP_WORD_SIZE) / SP_WORD_SIZE) + 1) + #endif #else - #define SP_INT_DIGITS ((256 + SP_WORD_SIZE) / SP_WORD_SIZE) - #endif -#elif defined(WOLFSSL_SP_4096) - #if defined(WOLFSSL_HAVE_SP_DH) - #define SP_INT_DIGITS ((8192 + SP_WORD_SIZE) / SP_WORD_SIZE) - #else - #define SP_INT_DIGITS ((4096 + SP_WORD_SIZE) / SP_WORD_SIZE) - #endif -#elif !defined(WOLFSSL_SP_NO_3072) - #if defined(WOLFSSL_HAVE_SP_DH) - #define SP_INT_DIGITS ((6144 + SP_WORD_SIZE) / SP_WORD_SIZE) - #else - #define SP_INT_DIGITS ((3072 + SP_WORD_SIZE) / SP_WORD_SIZE) - #endif -#else - #if defined(WOLFSSL_HAVE_SP_DH) - #define SP_INT_DIGITS ((4096 + SP_WORD_SIZE) / SP_WORD_SIZE) - #else - #define SP_INT_DIGITS ((2048 + SP_WORD_SIZE) / SP_WORD_SIZE) + #if defined(WOLFSSL_HAVE_SP_DH) || \ + (defined(WOLFSSL_HAVE_SP_RSA) && defined(WOLFSSL_KEY_GEN)) + #define SP_INT_DIGITS (((4096 + SP_WORD_SIZE) / SP_WORD_SIZE) + 1) + #else + #define SP_INT_DIGITS (((2048 + SP_WORD_SIZE) / SP_WORD_SIZE) + 1) + #endif #endif #endif -#define sp_isodd(a) ((a)->used != 0 && ((a)->dp[0] & 1)) -#define sp_iseven(a) ((a)->used != 0 && ((a)->dp[0] & 1) == 0) -#define sp_iszero(a) ((a)->used == 0) -#define sp_isone(a) ((a)->used == 1 && (a)->dp[0] == 1) -#define sp_abs(a, b) sp_copy(a, b) +#ifndef SP_INT_MAX_BITS + /* Convert number digits to number of bits. */ + #define SP_INT_MAX_BITS (SP_INT_DIGITS * SP_WORD_SIZE) +#endif + +#if SP_WORD_SIZE < 32 + /* Maximum number of digits in a number to mul or sqr. */ + #define SP_MUL_SQR_DIGITS (SP_INT_MAX_BITS / 2 / SP_WORD_SIZE) + /* Maximum value of partial in mul/sqr. */ + #define SP_MUL_SQR_MAX_PARTIAL \ + (SP_MUL_SQR_DIGITS * ((1 << SP_WORD_SIZE) - 1)) + /* Maximim value in an sp_int_word. */ + #define SP_INT_WORD_MAX ((1 << (SP_WORD_SIZE * 2)) - 1) + + #if SP_MUL_SQR_MAX_PARTIAL > SP_INT_WORD_MAX + /* The sum of the partials in the multiplicaiton/square can exceed the + * size of a word. This will overflow the word and loose data. + * Use an implementation that handles carry after every add and uses an + * extra temporary word for overflowing high word. + */ + #define SP_WORD_OVERFLOW + #endif +#endif + + +#ifndef NO_FILESYSTEM +/* Output is formatted to be used with script that checks calculations. */ + +/* Print out a number in big endian. */ +#ifndef WOLFSSL_SP_INT_NEGATIVE +/* Print out a positive multi-precision number. + * + * @param [in] a SP integer to print. + * @param [in] s String that describes the use of the number. + */ +#define sp_print(a, s) \ + do { \ + int ii; \ + fprintf(stderr, "%s=0x0", s); \ + for (ii = (a)->used-1; ii >= 0; ii--) { \ + fprintf(stderr, SP_PRINT_FMT, (a)->dp[ii]); \ + } \ + fprintf(stderr, "\n"); \ + } \ + while (0) +#else +/* Print out a multi-precision number. + * + * @param [in] a SP integer to print. + * @param [in] s String that describes the use of the number. + */ +#define sp_print(a, s) \ + do { \ + int ii; \ + fprintf(stderr, "%s=0x", s); \ + if ((a)->sign == MP_NEG) { \ + fprintf(stderr, "-"); \ + } \ + fprintf(stderr, "0"); \ + for (ii = (a)->used-1; ii >= 0; ii--) { \ + fprintf(stderr, SP_PRINT_FMT, (a)->dp[ii]); \ + } \ + fprintf(stderr, "\n"); \ + } \ + while (0) +#endif + +/* Print out a single multi-precision digit. + * + * @param [in] a SP integer digit to print. + * @param [in] s String that describes the use of the number. + */ +#define sp_print_digit(a, s) \ + do { \ + fprintf(stderr, "%s=0x0", s); \ + fprintf(stderr, SP_PRINT_FMT, a); \ + fprintf(stderr, "\n"); \ + } \ + while (0) + +/* Print out an integer. + * + * @param [in] a Number to print. + * @param [in] s String that describes the use of the number. + */ +#define sp_print_int(a, s) \ + do { \ + fprintf(stderr, "%s=0x0%x\n", s, a); \ + } \ + while (0) + +#else + + /* No filesystem, no output + * TODO: Use logging API? + */ + #define sp_print(a, s) + #define sp_print_digit(a, s) + #define sp_print_int(a, s) + +#endif /* !NO_FILESYSTEM */ + +/* Returns whether multi-precision number is odd + * + * Assumes a is not NULL. + * + * @param [in] a SP integer to check. + * @return 1 when odd. + * @return 0 when even. + */ +#define sp_isodd(a) (((a)->used != 0) && ((a)->dp[0] & 1)) +/* Returns whether multi-precision number is even + * + * Assumes a is not NULL. + * + * @param [in] a SP integer to check. + * @return 1 when even. + * @return 0 when odd. + */ +#define sp_iseven(a) (((a)->used != 0) && (((a)->dp[0] & 1) == 0)) +/* Returns whether multi-precision number has the value zero. + * + * Assumes a is not NULL. + * + * @param [in] a SP integer to check. + * @return 1 when zero. + * @return 0 when not zero. + */ +#define sp_iszero(a) ((a)->used == 0) + +#ifndef WOLFSSL_SP_INT_NEGATIVE +/* Returns whether multi-precision number has the value one. + * + * Assumes a is not NULL. + * + * @param [in] a SP integer to check. + * @return 1 when one. + * @return 0 when not one. + */ +#define sp_isone(a) (((a)->used == 1) && ((a)->dp[0] == 1)) +#else +/* Returns whether multi-precision number has the value of positive one. + * + * Assumes a is not NULL. + * + * @param [in] a SP integer to check. + * @return 1 when one. + * @return 0 when not one. + */ +#define sp_isone(a) \ + (((a)->used == 1) && ((a)->dp[0] == 1) && ((a)->sign == MP_ZPOS)) +#endif + +#ifndef WOLFSSL_SP_INT_NEGATIVE +/* Returns whether multi-precision number has the value 'd'. + * + * Assumes a is not NULL. + * + * @param [in] a SP integer to check. + * @param [in] d SP integer digit. + * @return 1 when one. + * @return 0 when not one. + */ +#define sp_isword(a, d) \ + ((((d) == 0) && sp_iszero(a)) || (((a)->used == 1) && ((a)->dp[0] == (d)))) +#else +/* Returns whether multi-precision number has the value 'd'. + * + * Assumes a is not NULL. + * + * @param [in] a SP integer to check. + * @param [in] d SP integer digit. + * @return 1 when one. + * @return 0 when not one. + */ +#define sp_isword(a, d) \ + ((((d) == 0) && sp_iszero(a)) || \ + (((a)->used == 1) && ((a)->dp[0] == (d)) && ((a)->sign == MP_ZPOS))) +#endif + +#ifndef WOLFSSL_SP_INT_NEGATIVE +/* Calculate the absolute value of the multi-precision number. + * + * Negative support not compiled in so just copies. + * + * @param [in] a SP integer to calculate absolute value of. + * @param [out] r SP integer to hold result. + * + * @return MP_OKAY on success. + * @return MP_VAL when a or r is NULL. + */ +#define sp_abs(a, b) sp_copy(a, b) +/* Returns whether multi-precision number is negative. + * + * Negative support not compiled in so always returns 0 (false). + * + * @param [in] a SP integer to check. + * @param [in] d SP integer digit. + * @return 0 indicating not negative always. + */ +#define sp_isneg(a) (0) +#else +/* Returns whether multi-precision number is negative. + * + * Assumes a is not NULL. + * + * @param [in] a SP integer to check. + * @param [in] d SP integer digit. + * @return 1 when negative. + * @return 0 when not negative. + */ +#define sp_isneg(a) ((a)->sign == MP_NEG) +#endif + +/* Updates the used count to exclude leading zeros. + * + * Assumes a is not NULL. + * + * @param [in] a SP integer to update. + */ +#define sp_clamp(a) \ + do { \ + int ii; \ + for (ii = a->used - 1; ii >= 0 && a->dp[ii] == 0; ii--) { \ + } \ + a->used = ii + 1; \ + } while (0) + +/* Check the compiled and linked math implementation are the same. + * Use the number of bits in a digit as indication of how code was compiled. + * + * @return 1 when the number of bits are the same. + * @return 0 when the number of bits are differnt. + */ +#define CheckFastMathSettings() (SP_WORD_SIZE == CheckRunTimeFastMath()) + + +/* The number of bytes to a sp_int with 'cnt' digits. + * Must have at least one digit. + */ +#define MP_INT_SIZEOF(cnt) \ + (sizeof(sp_int) - (SP_INT_DIGITS - (((cnt) == 0) ? 1 : (cnt))) * \ + sizeof(sp_int_digit)) +/* The address of the next sp_int after one with 'cnt' digits. */ +#define MP_INT_NEXT(t, cnt) \ + (sp_int*)(((byte*)(t)) + MP_INT_SIZEOF(cnt)) + +/** + * A reuslt of NO. + * e.g. Is prime? NO. + */ +#define MP_NO 0 +/** + * A reuslt of YES. + * e.g. Is prime? YES. + */ +#define MP_YES 1 + +#ifdef WOLFSSL_SP_INT_NEGATIVE +/** Number is 0/positive. */ +#define MP_ZPOS 0 +/** Number is negative. */ +#define MP_NEG 1 +#endif + +/** Radix is base 10 or decimal. */ +#define MP_RADIX_DEC 10 +/** Radix is base 16 or hexadecimal. */ +#define MP_RADIX_HEX 16 + +/** Result of comparison is that the first number is greater than second. */ +#define MP_GT 1 +/** Result of comparison is they are equal. */ +#define MP_EQ 0 +/** Result of comparison is that the first number is less than second. */ +#define MP_LT -1 + +/* ERROR VALUES */ +/** Error value on success. */ +#define MP_OKAY 0 +/** Error value when dynamic memory allocation fails. */ +#define MP_MEM -2 +/** Error value when value passed is not able to be used. */ +#define MP_VAL -3 +/** Error value when non-blocking operation is returning after partial + * completion. + */ +#define FP_WOULDBLOCK -4 +/* Unused error. Defined for backward compatability. */ +#define MP_NOT_INF -5 +/* Unused error. Defined for backward compatability. */ +#define MP_RANGE MP_NOT_INF + +/* Number of bits in each word/digit. */ +#define DIGIT_BIT SP_WORD_SIZE +/* Mask of all used bits in word/digit. */ +#define MP_MASK SP_MASK + #ifdef HAVE_WOLF_BIGINT - /* raw big integer */ + /* Raw big integer as a big-endian byte array. + * + * Useful for when using hardware - canonical format. + */ typedef struct WC_BIGINT { + /* Dynamically allocated buffer that is big-endian byte array. */ byte* buf; + /* Length of buffer in bytes. */ word32 len; + /* Hint for heap used to allocate buffer. */ void* heap; } WC_BIGINT; + + /* Ensure WC_BIGINT defined once. */ #define WOLF_BIGINT_DEFINED #endif + +/** + * SP integer. + * + * dp at end so user can allocate a smaller amount and set size. + */ typedef struct sp_int { + /** Number of words that contain data. */ int used; + /** Maximum number of words in data. */ int size; - sp_int_digit dp[SP_INT_DIGITS]; -#ifdef HAVE_WOLF_BIGINT - struct WC_BIGINT raw; /* unsigned binary (big endian) */ +#ifdef WOLFSSL_SP_INT_NEGATIVE + /** Indicates whether number is 0/positive or negative. */ + int sign; #endif +#ifdef HAVE_WOLF_BIGINT + /** Unsigned binary (big endian) representation of number. */ + struct WC_BIGINT raw; +#endif + /** Data of number. */ + sp_int_digit dp[SP_INT_DIGITS]; } sp_int; +/* Mulit-precision integer type is SP integer type. */ typedef sp_int mp_int; +/* Mulit-precision integer digit type is SP integer digit type. + * Type is unsigned. + */ typedef sp_int_digit mp_digit; -#include +/* Include the maths operations that are not implementation specific. */ +#include + +/* + * Function prototypes. + */ MP_API int sp_init(sp_int* a); -MP_API int sp_init_multi(sp_int* a, sp_int* b, sp_int* c, sp_int* d, - sp_int* e, sp_int* f); +MP_API int sp_init_size(sp_int* a, int size); +MP_API int sp_init_multi(sp_int* n1, sp_int* n2, sp_int* n3, sp_int* n4, + sp_int* n5, sp_int* n6); MP_API void sp_free(sp_int* a); -MP_API void sp_clear(sp_int* a); -MP_API int sp_unsigned_bin_size(sp_int* a); -MP_API int sp_read_unsigned_bin(sp_int* a, const byte* in, word32 inSz); -MP_API int sp_read_radix(sp_int* a, const char* in, int radix); -MP_API int sp_cmp(sp_int* a, sp_int* b); -MP_API int sp_count_bits(sp_int* a); -MP_API int sp_leading_bit(sp_int* a); -MP_API int sp_to_unsigned_bin(sp_int* a, byte* out); -MP_API int sp_to_unsigned_bin_len(sp_int* a, byte* out, int outSz); -MP_API void sp_forcezero(sp_int* a); -MP_API int sp_copy(sp_int* a, sp_int* r); -MP_API int sp_set(sp_int* a, sp_int_digit d); -MP_API void sp_clamp(sp_int* a); MP_API int sp_grow(sp_int* a, int l); -MP_API int sp_sub_d(sp_int* a, sp_int_digit d, sp_int* r); -MP_API int sp_cmp_d(sp_int* a, sp_int_digit d); -MP_API int sp_sub(sp_int* a, sp_int* b, sp_int* r); -MP_API int sp_mod(sp_int* a, sp_int* m, sp_int* r); + MP_API void sp_zero(sp_int* a); -MP_API int sp_add_d(sp_int* a, sp_int_digit d, sp_int* r); -MP_API int sp_lshd(sp_int* a, int s); -MP_API int sp_add(sp_int* a, sp_int* b, sp_int* r); -MP_API int sp_set_int(sp_int* a, unsigned long b); -MP_API int sp_tohex(sp_int* a, char* str); +MP_API void sp_clear(sp_int* a); +MP_API void sp_forcezero(sp_int* a); +MP_API int sp_init_copy (sp_int* r, sp_int* a); + +MP_API int sp_copy(const sp_int* a, sp_int* r); +MP_API int sp_exch(sp_int* a, sp_int* b); +MP_API int sp_cond_swap_ct(mp_int * a, mp_int * b, int c, int m); + +#ifdef WOLFSSL_SP_INT_NEGATIVE +MP_API int sp_abs(sp_int* a, sp_int* b); +#endif +#ifdef WOLFSSL_SP_MATH_ALL +MP_API int sp_cmp_mag(sp_int* a, sp_int* b); +#endif +MP_API int sp_cmp(sp_int* a, sp_int* b); + +MP_API int sp_is_bit_set(sp_int* a, unsigned int b); +MP_API int sp_count_bits(const sp_int* a); +#if defined(HAVE_ECC) && defined(HAVE_COMP_KEY) +MP_API int sp_cnt_lsb(sp_int* a); +#endif +MP_API int sp_leading_bit(sp_int* a); MP_API int sp_set_bit(sp_int* a, int i); MP_API int sp_2expt(sp_int* a, int e); -MP_API int sp_rand_prime(sp_int* r, int len, WC_RNG* rng, void* heap); + +MP_API int sp_set(sp_int* a, sp_int_digit d); +MP_API int sp_set_int(sp_int* a, unsigned long n); +MP_API int sp_cmp_d(sp_int* a, sp_int_digit d); +MP_API int sp_add_d(sp_int* a, sp_int_digit d, sp_int* r); +MP_API int sp_sub_d(sp_int* a, sp_int_digit d, sp_int* r); +MP_API int sp_mul_d(sp_int* a, sp_int_digit d, sp_int* r); +#if (defined(WOLFSSL_SP_MATH_ALL) && !defined(WOLFSSL_RSA_VERIFY_ONLY)) || \ + defined(WOLFSSL_KEY_GEN) || defined(HAVE_COMP_KEY) +MP_API int sp_div_d(sp_int* a, sp_int_digit d, sp_int* r, sp_int_digit* rem); +#endif +#if defined(WOLFSSL_SP_MATH_ALL) || (defined(HAVE_ECC) && \ + defined(HAVE_COMP_KEY)) +MP_API int sp_mod_d(sp_int* a, const sp_int_digit d, sp_int_digit* r); +#endif +#if defined(WOLFSSL_SP_MATH_ALL) && defined(HAVE_ECC) +MP_API int sp_div_2_mod_ct (sp_int* a, sp_int* b, sp_int* c); +MP_API int sp_div_2(sp_int* a, sp_int* r); +#endif + +MP_API int sp_add(sp_int* a, sp_int* b, sp_int* r); +MP_API int sp_sub(sp_int* a, sp_int* b, sp_int* r); +#if (defined(WOLFSSL_SP_MATH_ALL) && !defined(WOLFSSL_RSA_VERIFY_ONLY)) || \ + (!defined(WOLFSSL_SP_MATH) && defined(WOLFSSL_CUSTOM_CURVES)) || \ + defined(WOLFCRYPT_HAVE_ECCSI) || defined(WOLFCRYPT_HAVE_SAKKE) +MP_API int sp_addmod(sp_int* a, sp_int* b, sp_int* m, sp_int* r); +#endif +#if defined(WOLFSSL_SP_MATH_ALL) && !defined(WOLFSSL_RSA_VERIFY_ONLY) +MP_API int sp_submod(sp_int* a, sp_int* b, sp_int* m, sp_int* r); +#endif +#if defined(WOLFSSL_SP_MATH_ALL) && defined(HAVE_ECC) +MP_API int sp_submod_ct (sp_int* a, sp_int* b, sp_int* c, sp_int* d); +MP_API int sp_addmod_ct (sp_int* a, sp_int* b, sp_int* c, sp_int* d); +#endif + +MP_API int sp_lshd(sp_int* a, int s); +MP_API void sp_rshd(sp_int* a, int c); +MP_API void sp_rshb(sp_int* a, int n, sp_int* r); + +#ifdef WOLFSSL_SP_MATH_ALL +MP_API int sp_div(sp_int* a, sp_int* d, sp_int* r, sp_int* rem); +#endif +MP_API int sp_mod(sp_int* a, sp_int* m, sp_int* r); + MP_API int sp_mul(sp_int* a, sp_int* b, sp_int* r); MP_API int sp_mulmod(sp_int* a, sp_int* b, sp_int* m, sp_int* r); -MP_API int sp_gcd(sp_int* a, sp_int* b, sp_int* r); + MP_API int sp_invmod(sp_int* a, sp_int* m, sp_int* r); -MP_API int sp_lcm(sp_int* a, sp_int* b, sp_int* r); +#if defined(WOLFSSL_SP_MATH_ALL) && defined(HAVE_ECC) +MP_API int sp_invmod_mont_ct(sp_int* a, sp_int* m, sp_int* r, sp_int_digit mp); +#endif + +MP_API int sp_exptmod_ex(sp_int* b, sp_int* e, int digits, sp_int* m, + sp_int* r); MP_API int sp_exptmod(sp_int* b, sp_int* e, sp_int* m, sp_int* r); +#if defined(WOLFSSL_SP_MATH_ALL) || defined(WOLFSSL_HAVE_SP_DH) +MP_API int sp_exptmod_nct(sp_int* b, sp_int* e, sp_int* m, sp_int* r); +#endif + +#ifdef WOLFSSL_SP_MATH_ALL +MP_API int sp_div_2d(sp_int* a, int e, sp_int* r, sp_int* rem); +MP_API int sp_mod_2d(sp_int* a, int e, sp_int* r); +MP_API int sp_mul_2d(sp_int* a, int e, sp_int* r); +#endif + +MP_API int sp_sqr(sp_int* a, sp_int* r); +MP_API int sp_sqrmod(sp_int* a, sp_int* m, sp_int* r); + +MP_API int sp_mont_red(sp_int* a, sp_int* m, sp_int_digit mp); +MP_API int sp_mont_setup(sp_int* m, sp_int_digit* rho); +MP_API int sp_mont_norm(sp_int* norm, sp_int* m); + +MP_API int sp_unsigned_bin_size(const sp_int* a); +MP_API int sp_read_unsigned_bin(sp_int* a, const byte* in, word32 inSz); +MP_API int sp_to_unsigned_bin(sp_int* a, byte* out); +MP_API int sp_to_unsigned_bin_len(sp_int* a, byte* out, int outSz); +#ifdef WOLFSSL_SP_MATH_ALL +MP_API int sp_to_unsigned_bin_at_pos(int o, sp_int* a, unsigned char* out); +#endif + +MP_API int sp_read_radix(sp_int* a, const char* in, int radix); +MP_API int sp_tohex(sp_int* a, char* str); +MP_API int sp_todecimal(mp_int* a, char* str); +#if defined(WOLFSSL_SP_MATH_ALL) || defined(WC_MP_TO_RADIX) +MP_API int sp_toradix(mp_int* a, char* str, int radix); +MP_API int sp_radix_size(mp_int* a, int radix, int* size); +#endif + +MP_API int sp_rand_prime(sp_int* r, int len, WC_RNG* rng, void* heap); MP_API int sp_prime_is_prime(mp_int* a, int t, int* result); MP_API int sp_prime_is_prime_ex(mp_int* a, int t, int* result, WC_RNG* rng); -MP_API int sp_exch(sp_int* a, sp_int* b); -MP_API int sp_get_digit_count(sp_int *a); -MP_API int sp_init_copy (sp_int * a, sp_int * b); -MP_API void sp_rshb(sp_int* a, int n, sp_int* r); -MP_API int sp_mul_d(sp_int* a, sp_int_digit n, sp_int* r); +#if !defined(NO_RSA) && defined(WOLFSSL_KEY_GEN) +MP_API int sp_gcd(sp_int* a, sp_int* b, sp_int* r); +#endif +#if !defined(NO_RSA) && defined(WOLFSSL_KEY_GEN) && !defined(WC_RSA_BLINDING) +MP_API int sp_lcm(sp_int* a, sp_int* b, sp_int* r); +#endif + +WOLFSSL_API word32 CheckRunTimeFastMath(void); -#define MP_NO 0 -#define MP_YES 1 +/* Map mp functions to SP math versions. */ +/* Different name or signature. */ +#define mp_mul_2(a, r) sp_mul_2d(a, 1, r) +#define mp_div_3(a, r, rem) sp_div_d(a, 3, r, rem) +#define mp_rshb(A,x) sp_rshb(A,x,A) +#define mp_is_bit_set(a,b) sp_is_bit_set(a,(unsigned int)b) +#define mp_montgomery_reduce sp_mont_red +#define mp_montgomery_setup sp_mont_setup +#define mp_montgomery_calc_normalization sp_mont_norm -#define MP_RADIX_HEX 16 +/* Macros mappings. */ +#define mp_isodd sp_isodd +#define mp_iseven sp_iseven +#define mp_iszero sp_iszero +#define mp_isone sp_isone +#define mp_isword sp_isword +#define mp_abs sp_abs +#define mp_isneg sp_isneg +#define mp_clamp sp_clamp -#define MP_GT 1 -#define MP_EQ 0 -#define MP_LT -1 +/* One to one mappings. */ +#define mp_init sp_init +#define mp_init_size sp_init_size +#define mp_init_multi sp_init_multi +#define mp_free sp_free +#define mp_grow sp_grow +#define mp_zero sp_zero +#define mp_clear sp_clear +#define mp_forcezero sp_forcezero +#define mp_copy sp_copy +#define mp_init_copy sp_init_copy +#define mp_exch sp_exch +#define mp_cond_swap_ct sp_cond_swap_ct +#define mp_cmp_mag sp_cmp_mag +#define mp_cmp sp_cmp +#define mp_count_bits sp_count_bits +#define mp_cnt_lsb sp_cnt_lsb +#define mp_leading_bit sp_leading_bit +#define mp_set_bit sp_set_bit +#define mp_2expt sp_2expt +#define mp_set sp_set +#define mp_set_int sp_set_int +#define mp_cmp_d sp_cmp_d +#define mp_add_d sp_add_d +#define mp_sub_d sp_sub_d +#define mp_mul_d sp_mul_d +#define mp_div_d sp_div_d +#define mp_mod_d sp_mod_d +#define mp_div_2_mod_ct sp_div_2_mod_ct +#define mp_div_2 sp_div_2 +#define mp_add sp_add +#define mp_sub sp_sub +#define mp_addmod sp_addmod +#define mp_submod sp_submod +#define mp_addmod_ct sp_addmod_ct +#define mp_submod_ct sp_submod_ct +#define mp_lshd sp_lshd +#define mp_rshd sp_rshd +#define mp_div sp_div +#define mp_mod sp_mod +#define mp_mul sp_mul +#define mp_mulmod sp_mulmod +#define mp_invmod sp_invmod +#define mp_invmod_mont_ct sp_invmod_mont_ct +#define mp_exptmod_ex sp_exptmod_ex +#define mp_exptmod sp_exptmod +#define mp_exptmod_nct sp_exptmod_nct +#define mp_div_2d sp_div_2d +#define mp_mod_2d sp_mod_2d +#define mp_mul_2d sp_mul_2d +#define mp_sqr sp_sqr +#define mp_sqrmod sp_sqrmod -#define MP_OKAY 0 -#define MP_MEM -2 -#define MP_VAL -3 -#define FP_WOULDBLOCK -4 +#define mp_unsigned_bin_size sp_unsigned_bin_size +#define mp_read_unsigned_bin sp_read_unsigned_bin +#define mp_to_unsigned_bin sp_to_unsigned_bin +#define mp_to_unsigned_bin_len sp_to_unsigned_bin_len +#define mp_to_unsigned_bin_at_pos sp_to_unsigned_bin_at_pos +#define mp_read_radix sp_read_radix +#define mp_tohex sp_tohex +#define mp_todecimal sp_todecimal +#define mp_toradix sp_toradix +#define mp_radix_size sp_radix_size -#define DIGIT_BIT SP_WORD_SIZE -#define MP_MASK SP_MASK +#define mp_rand_prime sp_rand_prime +#define mp_prime_is_prime sp_prime_is_prime +#define mp_prime_is_prime_ex sp_prime_is_prime_ex +#define mp_gcd sp_gcd +#define mp_lcm sp_lcm -#define CheckFastMathSettings() 1 +#ifdef WOLFSSL_DEBUG_MATH +#define mp_dump(d, a, v) sp_print(a, d) +#endif -#define mp_free sp_free - -#define mp_isodd sp_isodd -#define mp_iseven sp_iseven -#define mp_iszero sp_iszero -#define mp_isone sp_isone -#define mp_abs sp_abs - -#define mp_init sp_init -#define mp_init_multi sp_init_multi -#define mp_clear sp_clear -#define mp_read_unsigned_bin sp_read_unsigned_bin -#define mp_unsigned_bin_size sp_unsigned_bin_size -#define mp_read_radix sp_read_radix -#define mp_cmp sp_cmp -#define mp_count_bits sp_count_bits -#define mp_leading_bit sp_leading_bit -#define mp_to_unsigned_bin sp_to_unsigned_bin -#define mp_to_unsigned_bin_len sp_to_unsigned_bin_len -#define mp_forcezero sp_forcezero -#define mp_copy sp_copy -#define mp_set sp_set -#define mp_clamp sp_clamp -#define mp_grow sp_grow -#define mp_sub_d sp_sub_d -#define mp_cmp_d sp_cmp_d -#define mp_sub sp_sub -#define mp_mod sp_mod -#define mp_zero sp_zero -#define mp_add_d sp_add_d -#define mp_lshd sp_lshd -#define mp_add sp_add -#define mp_set_int sp_set_int -#define mp_tohex sp_tohex -#define mp_set_bit sp_set_bit -#define mp_2expt sp_2expt -#define mp_rand_prime sp_rand_prime -#define mp_mul sp_mul -#define mp_mulmod sp_mulmod -#define mp_gcd sp_gcd -#define mp_invmod sp_invmod -#define mp_lcm sp_lcm -#define mp_exptmod sp_exptmod -#define mp_exptmod_nct sp_exptmod -#define mp_prime_is_prime sp_prime_is_prime -#define mp_prime_is_prime_ex sp_prime_is_prime_ex -#define mp_exch sp_exch -#define get_digit_count sp_get_digit_count -#define mp_init_copy sp_init_copy -#define mp_rshb(A,x) sp_rshb(A,x,A) -#define mp_mul_d sp_mul_d +#endif /* WOLFSSL_SP_MATH || WOLFSSL_SP_MATH_ALL */ +#ifdef __cplusplus +} /* extern "C" */ #endif #endif /* WOLF_CRYPT_SP_H */ - diff --git a/source/libwolfssl/wolfcrypt/srp.h b/source/libwolfssl/wolfcrypt/srp.h index a03645cc..d5b9d181 100644 --- a/source/libwolfssl/wolfcrypt/srp.h +++ b/source/libwolfssl/wolfcrypt/srp.h @@ -1,6 +1,6 @@ /* srp.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -28,11 +28,11 @@ #ifndef WOLFCRYPT_SRP_H #define WOLFCRYPT_SRP_H -#include -#include -#include -#include -#include +#include +#include +#include +#include +#include #ifdef __cplusplus extern "C" { @@ -246,7 +246,7 @@ WOLFSSL_API int wc_SrpSetPrivate(Srp* srp, const byte* priv, word32 size); * * The public ephemeral value is known as: * A at the client side. A = g ^ a % N - * B at the server side. B = (k * v + (g ˆ b % N)) % N + * B at the server side. B = (k * v + (g ^ b % N)) % N * This function MUST be called after wc_SrpSetPassword or wc_SrpSetVerifier. * * @param[in,out] srp the Srp structure. diff --git a/source/libwolfssl/wolfcrypt/tfm.h b/source/libwolfssl/wolfcrypt/tfm.h index f328f24b..1f080762 100644 --- a/source/libwolfssl/wolfcrypt/tfm.h +++ b/source/libwolfssl/wolfcrypt/tfm.h @@ -1,6 +1,6 @@ /* tfm.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -39,12 +39,12 @@ #ifndef WOLF_CRYPT_TFM_H #define WOLF_CRYPT_TFM_H -#include +#include #ifndef CHAR_BIT #include #endif -#include +#include #ifdef __cplusplus extern "C" { @@ -70,7 +70,12 @@ #define TFM_X86_64 #endif #endif -#if defined(TFM_X86_64) +#if defined(__aarch64__) && defined(__APPLE__) + #if !defined(TFM_AARCH_64) && !defined(TFM_NO_ASM) + #define TFM_AARCH_64 + #endif +#endif +#if defined(TFM_X86_64) || defined(TFM_AARCH_64) #if !defined(FP_64BIT) #define FP_64BIT #endif @@ -334,7 +339,7 @@ typedef fp_int mp_int; /* wolf big int and common functions */ -#include +#include /* externally define this symbol to ignore the default settings, useful for changing the build from the make process */ @@ -422,13 +427,16 @@ MP_API void fp_free(fp_int* a); /* zero/one/even/odd/neg/word ? */ #define fp_iszero(a) (((a)->used == 0) ? FP_YES : FP_NO) #define fp_isone(a) \ - ((((a)->used == 1) && ((a)->dp[0] == 1)) ? FP_YES : FP_NO) -#define fp_iseven(a) (((a)->used > 0 && (((a)->dp[0] & 1) == 0)) ? FP_YES : FP_NO) -#define fp_isodd(a) (((a)->used > 0 && (((a)->dp[0] & 1) == 1)) ? FP_YES : FP_NO) -#define fp_isneg(a) (((a)->sign != 0) ? FP_YES : FP_NO) -#define fp_isword(a, w) \ - ((((a)->used == 1) && ((a)->dp[0] == w)) || ((w == 0) && ((a)->used == 0)) \ + ((((a)->used == 1) && ((a)->dp[0] == 1) && ((a)->sign == FP_ZPOS)) \ ? FP_YES : FP_NO) +#define fp_iseven(a) \ + (((a)->used > 0 && (((a)->dp[0] & 1) == 0)) ? FP_YES : FP_NO) +#define fp_isodd(a) \ + (((a)->used > 0 && (((a)->dp[0] & 1) == 1)) ? FP_YES : FP_NO) +#define fp_isneg(a) (((a)->sign != FP_ZPOS) ? FP_YES : FP_NO) +#define fp_isword(a, w) \ + (((((a)->used == 1) && ((a)->dp[0] == w)) || \ + ((w == 0) && ((a)->used == 0))) ? FP_YES : FP_NO) /* set to a small digit */ void fp_set(fp_int *a, fp_digit b); @@ -440,7 +448,7 @@ int fp_is_bit_set(fp_int *a, fp_digit b); int fp_set_bit (fp_int * a, fp_digit b); /* copy from a to b */ -void fp_copy(fp_int *a, fp_int *b); +void fp_copy(const fp_int *a, fp_int *b); void fp_init_copy(fp_int *a, fp_int *b); /* clamp digits */ @@ -643,19 +651,15 @@ int fp_exptmod_nb(exptModNb_t* nb, fp_int* G, fp_int* X, fp_int* P, fp_int* Y); /*int fp_prime_random_ex(fp_int *a, int t, int size, int flags, tfm_prime_callback cb, void *dat);*/ /* radix conversions */ -int fp_count_bits(fp_int *a); +int fp_count_bits(const fp_int *a); int fp_leading_bit(fp_int *a); -int fp_unsigned_bin_size(fp_int *a); +int fp_unsigned_bin_size(const fp_int *a); int fp_read_unsigned_bin(fp_int *a, const unsigned char *b, int c); int fp_to_unsigned_bin(fp_int *a, unsigned char *b); int fp_to_unsigned_bin_len(fp_int *a, unsigned char *b, int c); int fp_to_unsigned_bin_at_pos(int x, fp_int *t, unsigned char *b); -/*int fp_signed_bin_size(fp_int *a);*/ -/*void fp_read_signed_bin(fp_int *a, const unsigned char *b, int c);*/ -/*void fp_to_signed_bin(fp_int *a, unsigned char *b);*/ - /*int fp_read_radix(fp_int *a, char *str, int radix);*/ /*int fp_toradix(fp_int *a, char *str, int radix);*/ /*int fp_toradix_n(fp_int * a, char *str, int radix, int maxlen);*/ @@ -771,17 +775,17 @@ MP_API int mp_div(mp_int * a, mp_int * b, mp_int * c, mp_int * d); MP_API int mp_cmp(mp_int *a, mp_int *b); MP_API int mp_cmp_d(mp_int *a, mp_digit b); -MP_API int mp_unsigned_bin_size(mp_int * a); +MP_API int mp_unsigned_bin_size(const mp_int * a); MP_API int mp_read_unsigned_bin (mp_int * a, const unsigned char *b, int c); MP_API int mp_to_unsigned_bin_at_pos(int x, mp_int *t, unsigned char *b); MP_API int mp_to_unsigned_bin (mp_int * a, unsigned char *b); MP_API int mp_to_unsigned_bin_len(mp_int * a, unsigned char *b, int c); MP_API int mp_sub_d(fp_int *a, fp_digit b, fp_int *c); -MP_API int mp_copy(fp_int* a, fp_int* b); +MP_API int mp_copy(const fp_int* a, fp_int* b); MP_API int mp_isodd(mp_int* a); MP_API int mp_iszero(mp_int* a); -MP_API int mp_count_bits(mp_int *a); +MP_API int mp_count_bits(const mp_int *a); MP_API int mp_leading_bit(mp_int *a); MP_API int mp_set_int(mp_int *a, unsigned long b); MP_API int mp_is_bit_set (mp_int * a, mp_digit b); diff --git a/source/libwolfssl/wolfcrypt/types.h b/source/libwolfssl/wolfcrypt/types.h index 50304576..da4435d3 100644 --- a/source/libwolfssl/wolfcrypt/types.h +++ b/source/libwolfssl/wolfcrypt/types.h @@ -1,6 +1,6 @@ /* types.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -48,8 +48,14 @@ decouple library dependencies with standard string, memory and so on. * (with minimal depencencies). */ #if defined(HAVE_EX_DATA) || defined(FORTRESS) + #ifdef HAVE_EX_DATA_CLEANUP_HOOKS + typedef void (*wolfSSL_ex_data_cleanup_routine_t)(void *data); + #endif typedef struct WOLFSSL_CRYPTO_EX_DATA { void* ex_data[MAX_EX_DATA]; + #ifdef HAVE_EX_DATA_CLEANUP_HOOKS + wolfSSL_ex_data_cleanup_routine_t ex_data_cleanup_routines[MAX_EX_DATA]; + #endif } WOLFSSL_CRYPTO_EX_DATA; #endif @@ -64,12 +70,18 @@ decouple library dependencies with standard string, memory and so on. #ifndef WOLFSSL_TYPES #ifndef byte typedef unsigned char byte; + typedef signed char sword8; + typedef unsigned char word8; #endif #ifdef WC_16BIT_CPU + typedef int sword16; typedef unsigned int word16; + typedef long sword32; typedef unsigned long word32; #else + typedef short sword16; typedef unsigned short word16; + typedef int sword32; typedef unsigned int word32; #endif typedef byte word24[3]; @@ -86,12 +98,16 @@ decouple library dependencies with standard string, memory and so on. /* try to set SIZEOF_LONG or SIZEOF_LONG_LONG if user didn't */ #if defined(_MSC_VER) || defined(HAVE_LIMITS_H) - #if !defined(SIZEOF_LONG_LONG) && !defined(SIZEOF_LONG) + /* make sure both SIZEOF_LONG_LONG and SIZEOF_LONG are set, + * otherwise causes issues with CTC_SETTINGS */ + #if !defined(SIZEOF_LONG_LONG) || !defined(SIZEOF_LONG) #include - #if defined(ULONG_MAX) && (ULONG_MAX == 0xffffffffUL) + #if !defined(SIZEOF_LONG) && defined(ULONG_MAX) && \ + (ULONG_MAX == 0xffffffffUL) #define SIZEOF_LONG 4 #endif - #if defined(ULLONG_MAX) && (ULLONG_MAX == 0xffffffffffffffffULL) + #if !defined(SIZEOF_LONG_LONG) && defined(ULLONG_MAX) && \ + (ULLONG_MAX == 0xffffffffffffffffULL) #define SIZEOF_LONG_LONG 8 #endif #endif @@ -114,32 +130,36 @@ decouple library dependencies with standard string, memory and so on. #if defined(_MSC_VER) || defined(__BCPLUSPLUS__) #define WORD64_AVAILABLE #define W64LIT(x) x##ui64 + typedef __int64 sword64; typedef unsigned __int64 word64; #elif defined(__EMSCRIPTEN__) #define WORD64_AVAILABLE #define W64LIT(x) x##ull + typedef long long sword64; typedef unsigned long long word64; #elif defined(SIZEOF_LONG) && SIZEOF_LONG == 8 #define WORD64_AVAILABLE #define W64LIT(x) x##LL + typedef long sword64; typedef unsigned long word64; #elif defined(SIZEOF_LONG_LONG) && SIZEOF_LONG_LONG == 8 #define WORD64_AVAILABLE #define W64LIT(x) x##LL + typedef long long sword64; typedef unsigned long long word64; #elif defined(__SIZEOF_LONG_LONG__) && __SIZEOF_LONG_LONG__ == 8 #define WORD64_AVAILABLE #define W64LIT(x) x##LL + typedef long long sword64; typedef unsigned long long word64; #endif -#if !defined(NO_64BIT) && defined(WORD64_AVAILABLE) && !defined(WC_16BIT_CPU) +#if defined(WORD64_AVAILABLE) && !defined(WC_16BIT_CPU) /* These platforms have 64-bit CPU registers. */ #if (defined(__alpha__) || defined(__ia64__) || defined(_ARCH_PPC64) || \ defined(__mips64) || defined(__x86_64__) || defined(_M_X64)) || \ defined(__aarch64__) || defined(__sparc64__) || defined(__s390x__ ) || \ - (defined(__riscv_xlen) && (__riscv_xlen == 64)) - typedef word64 wolfssl_word; + (defined(__riscv_xlen) && (__riscv_xlen == 64)) || defined(_M_ARM64) #define WC_64BIT_CPU #elif (defined(sun) || defined(__sun)) && \ (defined(LP64) || defined(_LP64)) @@ -147,12 +167,22 @@ decouple library dependencies with standard string, memory and so on. * and int uses 32 bits. When using Solaris Studio sparc and __sparc are * available for 32 bit detection but __sparc64__ could be missed. This * uses LP64 for checking 64 bit CPU arch. */ - typedef word64 wolfssl_word; #define WC_64BIT_CPU #else - typedef word32 wolfssl_word; - #ifdef WORD64_AVAILABLE - #define WOLFCRYPT_SLOW_WORD64 + #define WC_32BIT_CPU + #endif + + #if defined(NO_64BIT) + typedef word32 wolfssl_word; + #undef WORD64_AVAILABLE + #else + #ifdef WC_64BIT_CPU + typedef word64 wolfssl_word; + #else + typedef word32 wolfssl_word; + #ifdef WORD64_AVAILABLE + #define WOLFCRYPT_SLOW_WORD64 + #endif #endif #endif @@ -169,6 +199,16 @@ decouple library dependencies with standard string, memory and so on. mp_digit, no 64 bit type so make mp_digit 16 bit */ #endif +#ifdef WC_PTR_TYPE /* Allow user suppied type */ + typedef WC_PTR_TYPE wc_ptr_t; +#elif defined(HAVE_UINTPTR_T) + #include + typedef uintptr_t wc_ptr_t; +#else /* fallback to architecture size_t for pointer size */ + #include /* included for getting size_t type */ + typedef size_t wc_ptr_t; +#endif + enum { WOLFSSL_WORD_SIZE = sizeof(wolfssl_word), WOLFSSL_BIT_SIZE = 8, @@ -198,6 +238,8 @@ decouple library dependencies with standard string, memory and so on. #else #define WC_INLINE inline #endif + #elif defined(__CCRX__) + #define WC_INLINE inline #else #define WC_INLINE #endif @@ -223,6 +265,8 @@ decouple library dependencies with standard string, memory and so on. #elif defined(__MWERKS__) && TARGET_CPU_PPC #define PPC_INTRINSICS #define FAST_ROTATE + #elif defined(__CCRX__) + #define FAST_ROTATE #elif defined(__GNUC__) && (defined(__i386__) || defined(__x86_64__)) /* GCC does peephole optimizations which should result in using rotate instructions */ @@ -245,22 +289,23 @@ decouple library dependencies with standard string, memory and so on. #define THREAD_LS_T #endif - /* GCC 7 has new switch() fall-through detection */ - /* default to FALL_THROUGH stub */ #ifndef FALL_THROUGH - #define FALL_THROUGH - - #if defined(__GNUC__) - #if ((__GNUC__ > 7) || ((__GNUC__ == 7) && (__GNUC_MINOR__ >= 1))) - #undef FALL_THROUGH - #if defined(WOLFSSL_LINUXKM) && defined(fallthrough) - #define FALL_THROUGH fallthrough - #else - #define FALL_THROUGH __attribute__ ((fallthrough)); + /* GCC 7 has new switch() fall-through detection */ + #if defined(__GNUC__) + #if ((__GNUC__ > 7) || ((__GNUC__ == 7) && (__GNUC_MINOR__ >= 1))) + #if defined(WOLFSSL_LINUXKM) && defined(fallthrough) + #define FALL_THROUGH fallthrough + #else + #define FALL_THROUGH ; __attribute__ ((fallthrough)) + #endif #endif #endif - #endif #endif /* FALL_THROUGH */ + #if !defined(FALL_THROUGH) || defined(__XC32) + /* use stub for fall through by default or for Microchip compiler */ + #undef FALL_THROUGH + #define FALL_THROUGH + #endif /* Micrium will use Visual Studio for compilation but not the Win32 API */ #if defined(_WIN32) && !defined(MICRIUM) && !defined(FREERTOS) && \ @@ -282,7 +327,7 @@ decouple library dependencies with standard string, memory and so on. #elif (defined(WOLFSSL_ASYNC_CRYPT) && defined(HAVE_INTEL_QA)) || \ defined(HAVE_INTEL_QA_SYNC) #ifndef HAVE_INTEL_QA_SYNC - #include + #include #undef USE_WOLFSSL_MEMORY #ifdef WOLFSSL_DEBUG_MEMORY #define XMALLOC(s, h, t) IntelQaMalloc((s), (h), (t), __func__, __LINE__) @@ -294,7 +339,7 @@ decouple library dependencies with standard string, memory and so on. #define XREALLOC(p, n, h, t) IntelQaRealloc((p), (n), (h), (t)) #endif /* WOLFSSL_DEBUG_MEMORY */ #else - #include + #include #undef USE_WOLFSSL_MEMORY #ifdef WOLFSSL_DEBUG_MEMORY #define XMALLOC(s, h, t) wc_CryptoCb_IntelQaMalloc((s), (h), (t), __func__, __LINE__) @@ -399,15 +444,7 @@ decouple library dependencies with standard string, memory and so on. #if defined(WOLFSSL_ASYNC_CRYPT) || defined(WOLFSSL_SMALL_STACK) #define DECLARE_VAR_IS_HEAP_ALLOC #define DECLARE_VAR(VAR_NAME, VAR_TYPE, VAR_SIZE, HEAP) \ - VAR_TYPE* VAR_NAME = (VAR_TYPE*)XMALLOC(sizeof(VAR_TYPE) * VAR_SIZE, (HEAP), DYNAMIC_TYPE_WOLF_BIGINT); - #define DECLARE_VAR_INIT(VAR_NAME, VAR_TYPE, VAR_SIZE, INIT_VALUE, HEAP) \ - VAR_TYPE* VAR_NAME = ({ \ - VAR_TYPE* ptr = (VAR_TYPE*)XMALLOC(sizeof(VAR_TYPE) * VAR_SIZE, (HEAP), DYNAMIC_TYPE_WOLF_BIGINT); \ - if (ptr && INIT_VALUE) { \ - XMEMCPY(ptr, INIT_VALUE, sizeof(VAR_TYPE) * VAR_SIZE); \ - } \ - ptr; \ - }) + VAR_TYPE* VAR_NAME = (VAR_TYPE*)XMALLOC(sizeof(VAR_TYPE) * VAR_SIZE, (HEAP), DYNAMIC_TYPE_WOLF_BIGINT) #define DECLARE_ARRAY(VAR_NAME, VAR_TYPE, VAR_ITEMS, VAR_SIZE, HEAP) \ VAR_TYPE* VAR_NAME[VAR_ITEMS]; \ int idx##VAR_NAME, inner_idx_##VAR_NAME; \ @@ -440,8 +477,6 @@ decouple library dependencies with standard string, memory and so on. #undef DECLARE_VAR_IS_HEAP_ALLOC #define DECLARE_VAR(VAR_NAME, VAR_TYPE, VAR_SIZE, HEAP) \ VAR_TYPE VAR_NAME[VAR_SIZE] - #define DECLARE_VAR_INIT(VAR_NAME, VAR_TYPE, VAR_SIZE, INIT_VALUE, HEAP) \ - VAR_TYPE* VAR_NAME = (VAR_TYPE*)INIT_VALUE #define DECLARE_ARRAY(VAR_NAME, VAR_TYPE, VAR_ITEMS, VAR_SIZE, HEAP) \ VAR_TYPE VAR_NAME[VAR_ITEMS][VAR_SIZE] #define FREE_VAR(VAR_NAME, HEAP) /* nothing to free, its stack */ @@ -493,11 +528,12 @@ decouple library dependencies with standard string, memory and so on. #define XSTRLEN(s1) strlen((s1)) #define XSTRNCPY(s1,s2,n) strncpy((s1),(s2),(n)) - /* strstr, strncmp, and strncat only used by wolfSSL proper, + /* strstr, strncmp, strcmp, and strncat only used by wolfSSL proper, * not required for wolfCrypt only */ #define XSTRSTR(s1,s2) strstr((s1),(s2)) #define XSTRNSTR(s1,s2,n) mystrnstr((s1),(s2),(n)) #define XSTRNCMP(s1,s2,n) strncmp((s1),(s2),(n)) + #define XSTRCMP(s1,s2) strcmp((s1),(s2)) #define XSTRNCAT(s1,s2,n) strncat((s1),(s2),(n)) #ifdef USE_WOLF_STRSEP @@ -520,6 +556,8 @@ decouple library dependencies with standard string, memory and so on. #endif #if defined(WOLFSSL_DEOS) #define XSTRNCASECMP(s1,s2,n) strnicmp((s1),(s2),(n)) + #elif defined(WOLFSSL_CMSIS_RTOSv2) + #define XSTRNCASECMP(s1,s2,n) strncmp((s1),(s2),(n)) #else #define XSTRNCASECMP(s1,s2,n) strncasecmp((s1),(s2),(n)) #endif @@ -550,17 +588,17 @@ decouple library dependencies with standard string, memory and so on. { va_list ap; int ret; - + if ((int)n <= 0) return -1; - + va_start(ap, format); - - ret = vsnprintf(s, n, format, ap); + + ret = XVSNPRINTF(s, n, format, ap); if (ret < 0) ret = -1; - + va_end(ap); - + return ret; } #define XSNPRINTF _xsnprintf_ @@ -591,7 +629,7 @@ decouple library dependencies with standard string, memory and so on. if ((int)bufsize <= 0) return -1; va_start(ap, format); - ret = vsnprintf(buffer, bufsize, format, ap); + ret = XVSNPRINTF(buffer, bufsize, format, ap); if (ret >= (int)bufsize) ret = -1; va_end(ap); @@ -647,9 +685,14 @@ decouple library dependencies with standard string, memory and so on. #include #endif #if defined(HAVE_ECC) || defined(HAVE_OCSP) || \ - defined(WOLFSSL_KEY_GEN) || !defined(NO_DSA) + defined(WOLFSSL_KEY_GEN) || !defined(NO_DSA) || \ + defined(OPENSSL_EXTRA) #define XTOUPPER(c) toupper((c)) - #define XISALPHA(c) isalpha((c)) + #endif + #ifdef OPENSSL_ALL + #define XISALNUM(c) isalnum((c)) + #define XISASCII(c) isascii((c)) + #define XISSPACE(c) isspace((c)) #endif /* needed by wolfSSL_check_domain_name() */ #define XTOLOWER(c) tolower((c)) @@ -750,6 +793,8 @@ decouple library dependencies with standard string, memory and so on. DYNAMIC_TYPE_NAME_ENTRY = 90, DYNAMIC_TYPE_CURVE448 = 91, DYNAMIC_TYPE_ED448 = 92, + DYNAMIC_TYPE_AES = 93, + DYNAMIC_TYPE_CMAC = 94, DYNAMIC_TYPE_SNIFFER_SERVER = 1000, DYNAMIC_TYPE_SNIFFER_SESSION = 1001, DYNAMIC_TYPE_SNIFFER_PB = 1002, @@ -778,13 +823,15 @@ decouple library dependencies with standard string, memory and so on. WC_ALGO_TYPE_RNG = 4, WC_ALGO_TYPE_SEED = 5, WC_ALGO_TYPE_HMAC = 6, + WC_ALGO_TYPE_CMAC = 7, - WC_ALGO_TYPE_MAX = WC_ALGO_TYPE_HMAC + WC_ALGO_TYPE_MAX = WC_ALGO_TYPE_CMAC }; /* hash types */ enum wc_HashType { - #if defined(HAVE_SELFTEST) || defined(HAVE_FIPS) + #if defined(HAVE_SELFTEST) || defined(HAVE_FIPS) && \ + (defined(HAVE_FIPS_VERSION) && (HAVE_FIPS_VERSION <= 2)) /* In selftest build, WC_* types are not mapped to WC_HASH_TYPE types. * Values here are based on old selftest hmac.h enum, with additions. * These values are fixed for backwards FIPS compatibility */ @@ -854,12 +901,18 @@ decouple library dependencies with standard string, memory and so on. WC_PK_TYPE_ECDH = 3, WC_PK_TYPE_ECDSA_SIGN = 4, WC_PK_TYPE_ECDSA_VERIFY = 5, - WC_PK_TYPE_ED25519 = 6, + WC_PK_TYPE_ED25519_SIGN = 6, WC_PK_TYPE_CURVE25519 = 7, WC_PK_TYPE_RSA_KEYGEN = 8, WC_PK_TYPE_EC_KEYGEN = 9, - - WC_PK_TYPE_MAX = WC_PK_TYPE_EC_KEYGEN + WC_PK_TYPE_RSA_CHECK_PRIV_KEY = 10, + WC_PK_TYPE_EC_CHECK_PRIV_KEY = 11, + WC_PK_TYPE_ED448 = 12, + WC_PK_TYPE_CURVE448 = 13, + WC_PK_TYPE_ED25519_VERIFY = 14, + WC_PK_TYPE_ED25519_KEYGEN = 15, + WC_PK_TYPE_CURVE25519_KEYGEN = 16, + WC_PK_TYPE_MAX = WC_PK_TYPE_CURVE25519_KEYGEN }; @@ -902,6 +955,12 @@ decouple library dependencies with standard string, memory and so on. * Xilinx RSA operations require alignment */ #if defined(WOLFSSL_AESNI) || defined(WOLFSSL_ARMASM) || \ defined(USE_INTEL_SPEEDUP) || defined(WOLFSSL_AFALG_XILINX) + #ifndef WOLFSSL_USE_ALIGN + #define WOLFSSL_USE_ALIGN + #endif + #endif /* WOLFSSL_AESNI || WOLFSSL_ARMASM || USE_INTEL_SPEEDUP || WOLFSSL_AFALG_XILINX */ + + #ifdef WOLFSSL_USE_ALIGN #if !defined(ALIGN16) #if defined(__IAR_SYSTEMS_ICC__) || defined(__GNUC__) #define ALIGN16 __attribute__ ( (aligned (16))) @@ -974,7 +1033,15 @@ decouple library dependencies with standard string, memory and so on. #ifndef ALIGN256 #define ALIGN256 #endif - #endif /* WOLFSSL_AESNI || WOLFSSL_ARMASM */ + #endif /* WOLFSSL_USE_ALIGN */ + + #if !defined(PEDANTIC_EXTENSION) + #if defined(__GNUC__) + #define PEDANTIC_EXTENSION __extension__ + #else + #define PEDANTIC_EXTENSION + #endif + #endif /* !PEDANTIC_EXTENSION */ #ifndef TRUE @@ -1022,6 +1089,14 @@ decouple library dependencies with standard string, memory and so on. #define WC_MP_TO_RADIX #endif + #if defined(__GNUC__) && __GNUC__ > 5 + #define PRAGMA_GCC_IGNORE(str) _Pragma(str); + #define PRAGMA_GCC_POP _Pragma("GCC diagnostic pop"); + #else + #define PRAGMA_GCC_IGNORE(str) + #define PRAGMA_GCC_POP + #endif + #ifdef __cplusplus } /* extern "C" */ #endif diff --git a/source/libwolfssl/wolfcrypt/visibility.h b/source/libwolfssl/wolfcrypt/visibility.h index 8ed57fb9..46a31a44 100644 --- a/source/libwolfssl/wolfcrypt/visibility.h +++ b/source/libwolfssl/wolfcrypt/visibility.h @@ -1,6 +1,6 @@ /* visibility.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -43,7 +43,8 @@ */ #if defined(BUILDING_WOLFSSL) - #if defined(_MSC_VER) || defined(__MINGW32__) || defined(__CYGWIN__) + #if defined(_MSC_VER) || defined(__MINGW32__) || defined(__CYGWIN__) || \ + defined(_WIN32_WCE) #if defined(WOLFSSL_DLL) #define WOLFSSL_API __declspec(dllexport) #else @@ -61,7 +62,8 @@ #define WOLFSSL_LOCAL #endif /* HAVE_VISIBILITY */ #else /* BUILDING_WOLFSSL */ - #if defined(_MSC_VER) || defined(__MINGW32__) || defined(__CYGWIN__) + #if defined(_MSC_VER) || defined(__MINGW32__) || defined(__CYGWIN__) || \ + defined(_WIN32_WCE) #if defined(WOLFSSL_DLL) #define WOLFSSL_API __declspec(dllimport) #else diff --git a/source/libwolfssl/wolfcrypt/wc_encrypt.h b/source/libwolfssl/wolfcrypt/wc_encrypt.h index 5f1524f7..71487fba 100644 --- a/source/libwolfssl/wolfcrypt/wc_encrypt.h +++ b/source/libwolfssl/wolfcrypt/wc_encrypt.h @@ -1,6 +1,6 @@ /* wc_encrypt.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -27,18 +27,18 @@ #ifndef WOLF_CRYPT_ENCRYPT_H #define WOLF_CRYPT_ENCRYPT_H -#include +#include #ifndef NO_AES - #include + #include #endif #ifdef HAVE_CHACHA - #include + #include #endif #ifndef NO_DES3 - #include + #include #endif #ifndef NO_RC4 - #include + #include #endif #ifdef __cplusplus @@ -60,6 +60,22 @@ #endif +#if (defined(HAVE_FIPS) && defined(HAVE_FIPS_VERSION) && \ + (HAVE_FIPS_VERSION <= 2)) || (defined(HAVE_SELFTEST) && \ + (!defined(HAVE_SELFTEST_VERSION) || (HAVE_SELFTEST_VERSION < 2))) + /* In FIPS cert 3389 and CAVP selftest v1 build, these enums are + * not in aes.h. Define them here outside the fips boundary. + */ + #ifndef GCM_NONCE_MID_SZ + /* The usual default nonce size for AES-GCM. */ + #define GCM_NONCE_MID_SZ 12 + #endif + #ifndef CCM_NONCE_MIN_SZ + #define CCM_NONCE_MIN_SZ 7 + #endif +#endif + + #if !defined(NO_AES) && defined(HAVE_AES_CBC) WOLFSSL_API int wc_AesCbcEncryptWithKey(byte* out, const byte* in, word32 inSz, const byte* key, word32 keySz, diff --git a/source/libwolfssl/wolfcrypt/wc_pkcs11.h b/source/libwolfssl/wolfcrypt/wc_pkcs11.h index 7c4066f3..65bf50a6 100644 --- a/source/libwolfssl/wolfcrypt/wc_pkcs11.h +++ b/source/libwolfssl/wolfcrypt/wc_pkcs11.h @@ -1,6 +1,6 @@ /* wc_pkcs11.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -22,7 +22,7 @@ #ifndef _WOLFPKCS11_H_ #define _WOLFPKCS11_H_ -#include +#include #ifdef HAVE_PKCS11 @@ -30,8 +30,8 @@ #error PKCS11 support requires ./configure --enable-cryptocb or WOLF_CRYPTO_CB to be defined #endif -#include -#include +#include +#include #ifdef __cplusplus extern "C" { @@ -67,7 +67,6 @@ enum Pkcs11KeyType { PKCS11_KEY_TYPE_EC, }; - WOLFSSL_API int wc_Pkcs11_Initialize(Pkcs11Dev* dev, const char* library, void* heap); WOLFSSL_API void wc_Pkcs11_Finalize(Pkcs11Dev* dev); diff --git a/source/libwolfssl/wolfcrypt/wc_port.h b/source/libwolfssl/wolfcrypt/wc_port.h index d5225309..5f84d3a5 100644 --- a/source/libwolfssl/wolfcrypt/wc_port.h +++ b/source/libwolfssl/wolfcrypt/wc_port.h @@ -1,6 +1,6 @@ /* wc_port.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -81,6 +81,11 @@ _Pragma("GCC diagnostic ignored \"-Wsign-compare\""); _Pragma("GCC diagnostic ignored \"-Wpointer-sign\""); _Pragma("GCC diagnostic ignored \"-Wbad-function-cast\""); + _Pragma("GCC diagnostic ignored \"-Wdiscarded-qualifiers\""); + _Pragma("GCC diagnostic ignored \"-Wtype-limits\""); + + /* suppress inclusion of stdint-gcc.h to avoid conflicts with Linux native include/linux/types.h: */ + #define _GCC_STDINT_H #include #include @@ -88,6 +93,7 @@ #include #include #include + #include #ifndef SINGLE_THREADED #include #endif @@ -99,19 +105,52 @@ #else #include #endif - #define SAVE_VECTOR_REGISTERS() kernel_fpu_begin() - #define RESTORE_VECTOR_REGISTERS() kernel_fpu_end() + #ifndef SAVE_VECTOR_REGISTERS + #define SAVE_VECTOR_REGISTERS() kernel_fpu_begin() + #endif + #ifndef RESTORE_VECTOR_REGISTERS + #define RESTORE_VECTOR_REGISTERS() kernel_fpu_end() + #endif #elif defined(WOLFSSL_ARMASM) #include - #define SAVE_VECTOR_REGISTERS() ({ preempt_disable(); fpsimd_preserve_current_state(); }) - #define RESTORE_VECTOR_REGISTERS() ({ fpsimd_restore_current_state(); preempt_enable(); }) + #ifndef SAVE_VECTOR_REGISTERS + #define SAVE_VECTOR_REGISTERS() ({ preempt_disable(); fpsimd_preserve_current_state(); }) + #endif + #ifndef RESTORE_VECTOR_REGISTERS + #define RESTORE_VECTOR_REGISTERS() ({ fpsimd_restore_current_state(); preempt_enable(); }) + #endif #else - #define SAVE_VECTOR_REGISTERS() ({}) - #define RESTORE_VECTOR_REGISTERS() ({}) + #ifndef SAVE_VECTOR_REGISTERS + #define SAVE_VECTOR_REGISTERS() ({}) + #endif + #ifndef RESTORE_VECTOR_REGISTERS + #define RESTORE_VECTOR_REGISTERS() ({}) + #endif #endif _Pragma("GCC diagnostic pop"); + /* Linux headers define these using C expressions, but we need + * them to be evaluable by the preprocessor, for use in sp_int.h. + */ + _Static_assert(sizeof(ULONG_MAX) == 8, "WOLFSSL_LINUXKM supported only on targets with 64 bit long words."); + #undef UCHAR_MAX + #define UCHAR_MAX 255 + #undef USHRT_MAX + #define USHRT_MAX 65535 + #undef UINT_MAX + #define UINT_MAX 4294967295U + #undef ULONG_MAX + #define ULONG_MAX 18446744073709551615UL + #undef ULLONG_MAX + #define ULLONG_MAX ULONG_MAX + #undef INT_MAX + #define INT_MAX 2147483647 + #undef LONG_MAX + #define LONG_MAX 9223372036854775807L + #undef LLONG_MAX + #define LLONG_MAX LONG_MAX + /* remove this multifariously conflicting macro, picked up from * Linux arch//include/asm/current.h. */ @@ -122,9 +161,17 @@ */ #define _MM_MALLOC_H_INCLUDED +#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 12, 0) + /* kvmalloc()/kvfree() and friends added in linux commit a7c3e901 */ + #define malloc(x) kvmalloc(x, GFP_KERNEL) + #define free(x) kvfree(x) + void *lkm_realloc(void *ptr, size_t newsize); + #define realloc(x, y) lkm_realloc(x, y) +#else #define malloc(x) kmalloc(x, GFP_KERNEL) #define free(x) kfree(x) #define realloc(x,y) krealloc(x, y, GFP_KERNEL) +#endif /* min() and max() in linux/kernel.h over-aggressively type-check, producing * myriad spurious -Werrors throughout the codebase. @@ -157,8 +204,10 @@ #else /* ! WOLFSSL_LINUXKM */ - #ifdef BUILDING_WOLFSSL + #ifndef SAVE_VECTOR_REGISTERS #define SAVE_VECTOR_REGISTERS() do{}while(0) + #endif + #ifndef RESTORE_VECTOR_REGISTERS #define RESTORE_VECTOR_REGISTERS() do{}while(0) #endif @@ -193,6 +242,8 @@ /* do nothing, just don't pick Unix */ #elif defined(FREERTOS) || defined(FREERTOS_TCP) || defined(WOLFSSL_SAFERTOS) /* do nothing */ +#elif defined(RTTHREAD) + /* do nothing */ #elif defined(EBSNET) /* do nothing */ #elif defined(FREESCALE_MQX) || defined(FREESCALE_KSDK_MQX) @@ -276,7 +327,11 @@ #endif #if (defined(OPENSSL_EXTRA) || defined(GOAHEAD_WS)) && \ !defined(NO_FILESYSTEM) - #include /* for close of BIO */ + #ifdef FUSION_RTOS + #include + #else + #include /* for close of BIO */ + #endif #endif #endif @@ -298,6 +353,9 @@ #include "FreeRTOS.h" #include "semphr.h" typedef SemaphoreHandle_t wolfSSL_Mutex; + #elif defined (RTTHREAD) + #include "rtthread.h" + typedef rt_mutex_t wolfSSL_Mutex; #elif defined(WOLFSSL_SAFERTOS) typedef struct wolfSSL_Mutex { signed char mutexBuffer[portQUEUE_OVERHEAD_BYTES]; @@ -409,6 +467,11 @@ WOLFSSL_API int wc_SetMutexCb(mutex_cb* cb); WOLFSSL_API int wolfCrypt_Init(void); WOLFSSL_API int wolfCrypt_Cleanup(void); +#ifdef WOLFSSL_TRACK_MEMORY_VERBOSE + WOLFSSL_API long wolfCrypt_heap_peakAllocs_checkpoint(void); + WOLFSSL_API long wolfCrypt_heap_peakBytes_checkpoint(void); +#endif + /* FILESYSTEM SECTION */ /* filesystem abstraction layer, used by ssl.c */ @@ -432,6 +495,7 @@ WOLFSSL_API int wolfCrypt_Cleanup(void); #define XSEEK_END VSEEK_END #define XBADFILE -1 #define XFGETS(b,s,f) -2 /* Not ported yet */ + #elif defined(LSR_FS) #include #define XFILE struct fs_file* @@ -444,7 +508,8 @@ WOLFSSL_API int wolfCrypt_Cleanup(void); #define XFCLOSE fs_close #define XSEEK_END 0 #define XBADFILE NULL - #define XFGETS(b,s,f) -2 /* Not ported yet */ + #define XFGETS(b,s,f) -2 /* Not ported yet */ + #elif defined(FREESCALE_MQX) || defined(FREESCALE_KSDK_MQX) #define XFILE MQX_FILE_PTR #define XFOPEN fopen @@ -457,11 +522,10 @@ WOLFSSL_API int wolfCrypt_Cleanup(void); #define XSEEK_END IO_SEEK_END #define XBADFILE NULL #define XFGETS fgets + #elif defined(WOLFSSL_DEOS) #define NO_FILESYSTEM #warning "TODO - DDC-I Certifiable Fast File System for Deos is not integrated" - //#define XFILE bfd * - #elif defined(MICRIUM) #include #define XFILE FS_FILE* @@ -475,6 +539,7 @@ WOLFSSL_API int wolfCrypt_Cleanup(void); #define XSEEK_END FS_SEEK_END #define XBADFILE NULL #define XFGETS(b,s,f) -2 /* Not ported yet */ + #elif defined(WOLFSSL_NUCLEUS_1_2) #include "fal/inc/fal.h" #define XFILE FILE* @@ -487,6 +552,7 @@ WOLFSSL_API int wolfCrypt_Cleanup(void); #define XFCLOSE fclose #define XSEEK_END PSEEK_END #define XBADFILE NULL + #elif defined(WOLFSSL_APACHE_MYNEWT) #include #define XFILE struct fs_file* @@ -501,6 +567,7 @@ WOLFSSL_API int wolfCrypt_Cleanup(void); #define XSEEK_END 2 #define XBADFILE NULL #define XFGETS(b,s,f) -2 /* Not ported yet */ + #elif defined(WOLFSSL_ZEPHYR) #include @@ -551,6 +618,57 @@ WOLFSSL_API int wolfCrypt_Cleanup(void); #define XSEEK_END 0 #define XBADFILE NULL #define XFGETS(b,s,f) f_gets((b), (s), (f)) +#elif defined (_WIN32_WCE) + /* stdio, WINCE case */ + #include + #define XFILE FILE* + #define XFOPEN fopen + #define XFDOPEN fdopen + #define XFSEEK fseek + #define XFTELL ftell + #define XREWIND(F) XFSEEK(F, 0, SEEK_SET) + #define XFREAD fread + #define XFWRITE fwrite + #define XFCLOSE fclose + #define XSEEK_END SEEK_END + #define XBADFILE NULL + #define XFGETS fgets + #define XVSNPRINTF _vsnprintf + +#elif defined(FUSION_RTOS) + #include + #include + #include + #include + #include + #include + #define XFILE FCL_FILE* + #define XFOPEN FCL_FOPEN + #define XFSEEK FCL_FSEEK + #define XFTELL FCL_FTELL + #define XREWIND FCL_REWIND + #define XFREAD FCL_FREAD + #define XFWRITE FCL_FWRITE + #define XFCLOSE FCL_FCLOSE + #define XSEEK_END SEEK_END + #define XBADFILE NULL + #define XFGETS FCL_FGETS + #define XFPUTS FCL_FPUTS + #define XFPRINTF FCL_FPRINTF + #define XVFPRINTF FCL_VFPRINTF + #define XVSNPRINTF FCL_VSNPRINTF + #define XSNPRINTF FCL_SNPRINTF + #define XSPRINTF FCL_SPRINTF + #define DIR FCL_DIR + #define stat FCL_STAT + #define opendir FCL_OPENDIR + #define closedir FCL_CLOSEDIR + #define readdir FCL_READDIR + #define dirent fclDirent + #define strncasecmp FCL_STRNCASECMP + + /* FUSION SPECIFIC ERROR CODE */ + #define FUSION_IO_SEND_E FCL_EWOULDBLOCK #elif defined(WOLFSSL_USER_FILESYSTEM) /* To be defined in user_settings.h */ @@ -564,6 +682,7 @@ WOLFSSL_API int wolfCrypt_Cleanup(void); #else #define XFOPEN fopen #endif + #define XFDOPEN fdopen #define XFSEEK fseek #define XFTELL ftell #define XREWIND rewind @@ -573,13 +692,61 @@ WOLFSSL_API int wolfCrypt_Cleanup(void); #define XSEEK_END SEEK_END #define XBADFILE NULL #define XFGETS fgets + #define XFPRINTF fprintf - #if !defined(USE_WINDOWS_API) && !defined(NO_WOLFSSL_DIR)\ + #if !defined(NO_WOLFSSL_DIR)\ && !defined(WOLFSSL_NUCLEUS) && !defined(WOLFSSL_NUCLEUS_1_2) + #if defined(USE_WINDOWS_API) + #include + #define XSTAT _stat + #define XS_ISREG(s) (s & _S_IFREG) + #define SEPARATOR_CHAR ';' + + #elif defined(INTIME_RTOS) + #include + #define XSTAT _stat64 + #define XS_ISREG(s) S_ISREG(s) + #define SEPARATOR_CHAR ';' + #define XWRITE write + #define XREAD read + #define XCLOSE close + + #elif defined(WOLFSSL_ZEPHYR) + #define XSTAT fs_stat + #define XS_ISREG(s) (s == FS_DIR_ENTRY_FILE) + #define SEPARATOR_CHAR ':' + #elif defined(WOLFSSL_TELIT_M2MB) + #define XSTAT m2mb_fs_stat + #define XS_ISREG(s) (s & M2MB_S_IFREG) + #define SEPARATOR_CHAR ':' + #else #include #include #include + #define XWRITE write + #define XREAD read + #define XCLOSE close + #define XSTAT stat + #define XS_ISREG(s) S_ISREG(s) + #define SEPARATOR_CHAR ':' #endif + #endif +#endif + +/* Defaults, user may over-ride with user_settings.h or in a porting section + * above + */ +#ifndef XVFPRINTF + #define XVFPRINTF vfprintf +#endif +#ifndef XVSNPRINTF + #define XVSNPRINTF vsnprintf +#endif +#ifndef XFPUTS + #define XFPUTS fputs +#endif +#ifndef XSPRINTF + #define XSPRINTF sprintf #endif #ifndef MAX_FILENAME_SZ @@ -598,6 +765,7 @@ WOLFSSL_API int wolfCrypt_Cleanup(void); #ifdef USE_WINDOWS_API WIN32_FIND_DATAA FindFileData; HANDLE hFind; + struct XSTAT s; #elif defined(WOLFSSL_ZEPHYR) struct fs_dirent entry; struct fs_dir_t dir; @@ -608,10 +776,17 @@ WOLFSSL_API int wolfCrypt_Cleanup(void); M2MB_DIR_T* dir; struct M2MB_DIRENT* entry; struct M2MB_STAT s; + #elif defined(INTIME_RTOS) + struct stat64 s; + struct _find64 FindFileData; + #define IntimeFindFirst(name, data) (0 == _findfirst64(name, data)) + #define IntimeFindNext(data) (0 == _findnext64(data)) + #define IntimeFindClose(data) (0 == _findclose64(data)) + #define IntimeFilename(ctx) ctx->FindFileData.f_filename #else struct dirent* entry; DIR* dir; - struct stat s; + struct XSTAT s; #endif char name[MAX_FILENAME_SZ]; } ReadDirCtx; @@ -622,6 +797,9 @@ WOLFSSL_API int wolfCrypt_Cleanup(void); WOLFSSL_API int wc_ReadDirNext(ReadDirCtx* ctx, const char* path, char** name); WOLFSSL_API void wc_ReadDirClose(ReadDirCtx* ctx); #endif /* !NO_WOLFSSL_DIR */ + #define WC_ISFILEEXIST_NOFILE -1 + + WOLFSSL_API int wc_FileExists(const char* fname); #endif /* !NO_FILESYSTEM */ @@ -637,6 +815,10 @@ WOLFSSL_API int wolfCrypt_Cleanup(void); #endif /* max */ #endif /* USE_WINDOWS_API */ +#ifdef __QNXNTO__ + #define WOLFSSL_HAVE_MIN + #define WOLFSSL_HAVE_MAX +#endif /* TIME SECTION */ /* Time functions */ @@ -683,10 +865,7 @@ WOLFSSL_API int wolfCrypt_Cleanup(void); #define XGMTIME(c, t) rtpsys_gmtime((c)) #elif defined(WOLFSSL_DEOS) - #define XTIME(t1) deos_time((t1)) - #define WOLFSSL_GMTIME - #define USE_WOLF_TM - #define USE_WOLF_TIME_T + #include #elif defined(MICRIUM) #include @@ -738,9 +917,32 @@ WOLFSSL_API int wolfCrypt_Cleanup(void); #elif defined(_WIN32_WCE) #include + #include /* For file system */ + + time_t windows_time(time_t* timer); + + #define FindNextFileA(h, d) FindNextFile(h, (LPWIN32_FIND_DATAW) d) + #define FindFirstFileA(fn, d) FindFirstFile((LPCWSTR) fn, \ + (LPWIN32_FIND_DATAW) d) #define XTIME(t1) windows_time((t1)) #define WOLFSSL_GMTIME + /* if struct tm is not defined in WINCE SDK */ + #ifndef _TM_DEFINED + struct tm { + int tm_sec; /* seconds */ + int tm_min; /* minutes */ + int tm_hour; /* hours */ + int tm_mday; /* day of month (month specific) */ + int tm_mon; /* month */ + int tm_year; /* year */ + int tm_wday; /* day of week (out of 1-7)*/ + int tm_yday; /* day of year (out of 365) */ + int tm_isdst; /* is it daylight savings */ + }; + #define _TM_DEFINED + #endif + #elif defined(WOLFSSL_APACHE_MYNEWT) #include "os/os_time.h" #define XTIME(t1) mynewt_time((t1)) @@ -786,7 +988,7 @@ WOLFSSL_API int wolfCrypt_Cleanup(void); #ifdef BUILDING_WOLFSSL /* includes are all above, with incompatible warnings masked out. */ - #if LINUX_VERSION_CODE < KERNEL_VERSION(5, 0, 0) + #if LINUX_VERSION_CODE < KERNEL_VERSION(5, 5, 0) typedef __kernel_time_t time_t; #else typedef __kernel_time64_t time_t; diff --git a/source/libwolfssl/wolfcrypt/wolfevent.h b/source/libwolfssl/wolfcrypt/wolfevent.h index dee5dcaa..83df5cfd 100644 --- a/source/libwolfssl/wolfcrypt/wolfevent.h +++ b/source/libwolfssl/wolfcrypt/wolfevent.h @@ -1,6 +1,6 @@ /* wolfevent.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -27,7 +27,7 @@ #endif #ifndef SINGLE_THREADED - #include + #include #endif typedef struct WOLF_EVENT WOLF_EVENT; diff --git a/source/libwolfssl/wolfcrypt/wolfmath.h b/source/libwolfssl/wolfcrypt/wolfmath.h index 3d9830a1..3430033e 100644 --- a/source/libwolfssl/wolfcrypt/wolfmath.h +++ b/source/libwolfssl/wolfcrypt/wolfmath.h @@ -1,6 +1,6 @@ /* wolfmath.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -50,23 +50,23 @@ This library provides big integer math functions. ((defined(HAVE_ECC) && defined(ECC_TIMING_RESISTANT)) || \ (defined(USE_FAST_MATH) && defined(TFM_TIMING_RESISTANT))) - extern const wolfssl_word wc_off_on_addr[2]; + extern const wc_ptr_t wc_off_on_addr[2]; #endif /* common math functions */ -MP_API int get_digit_count(mp_int* a); -MP_API mp_digit get_digit(mp_int* a, int n); +MP_API int get_digit_count(const mp_int* a); +MP_API mp_digit get_digit(const mp_int* a, int n); MP_API int get_rand_digit(WC_RNG* rng, mp_digit* d); WOLFSSL_API int mp_cond_copy(mp_int* a, int copy, mp_int* b); WOLFSSL_API int mp_rand(mp_int* a, int digits, WC_RNG* rng); -enum { - /* format type */ - WC_TYPE_HEX_STR = 1, - WC_TYPE_UNSIGNED_BIN = 2, -}; +#define WC_TYPE_HEX_STR 1 +#define WC_TYPE_UNSIGNED_BIN 2 +#if defined(WOLFSSL_QNX_CAAM) + #define WC_TYPE_BLACK_KEY 3 +#endif WOLFSSL_API int wc_export_int(mp_int* mp, byte* buf, word32* len, word32 keySz, int encType); diff --git a/source/libwolfssl/wolfio.h b/source/libwolfssl/wolfio.h index 58abb969..d5b973dc 100644 --- a/source/libwolfssl/wolfio.h +++ b/source/libwolfssl/wolfio.h @@ -1,6 +1,6 @@ /* io.h * - * Copyright (C) 2006-2020 wolfSSL Inc. + * Copyright (C) 2006-2021 wolfSSL Inc. * * This file is part of wolfSSL. * @@ -133,6 +133,10 @@ #elif defined(HAVE_NETX) #include "nx_api.h" #include "errno.h" + #elif defined(FUSION_RTOS) + #include + #include + #include #elif !defined(WOLFSSL_NO_SOCK) #include #include @@ -244,13 +248,17 @@ #define SOCKET_ECONNREFUSED NU_CONNECTION_REFUSED #define SOCKET_ECONNABORTED NU_NOT_CONNECTED #elif defined(WOLFSSL_DEOS) - #define SOCKET_EWOULDBLOCK EAGAIN - #define SOCKET_EAGAIN EAGAIN - #define SOCKET_ECONNRESET EINTR - #define SOCKET_EINTR EINTR - #define SOCKET_EPIPE EPIPE - #define SOCKET_ECONNREFUSED SOCKET_ERROR - #define SOCKET_ECONNABORTED SOCKET_ERROR + /* `sockaddr_storage` is not defined in DEOS. This workaround will + * work for IPV4, but not IPV6 + */ + #define sockaddr_storage sockaddr_in + #define SOCKET_EWOULDBLOCK EAGAIN + #define SOCKET_EAGAIN EAGAIN + #define SOCKET_ECONNRESET EINTR + #define SOCKET_EINTR EINTR + #define SOCKET_EPIPE EPIPE + #define SOCKET_ECONNREFUSED SOCKET_ERROR + #define SOCKET_ECONNABORTED SOCKET_ERROR #elif defined(HAVE_NETX) #define SOCKET_EWOULDBLOCK NX_NOT_CONNECTED #define SOCKET_EAGAIN NX_NOT_CONNECTED @@ -259,6 +267,14 @@ #define SOCKET_EPIPE NX_NOT_CONNECTED #define SOCKET_ECONNREFUSED NX_NOT_CONNECTED #define SOCKET_ECONNABORTED NX_NOT_CONNECTED +#elif defined(FUSION_RTOS) + #define SOCKET_EWOULDBLOCK FCL_EWOULDBLOCK + #define SOCKET_EAGAIN FCL_EAGAIN + #define SOCKET_ECONNRESET FNS_ECONNRESET + #define SOCKET_EINTR FCL_EINTR + #define SOCKET_EPIPE FCL_EPIPE + #define SOCKET_ECONNREFUSED FCL_ECONNREFUSED + #define SOCKET_ECONNABORTED FNS_ECONNABORTED #else #define SOCKET_EWOULDBLOCK EWOULDBLOCK #define SOCKET_EAGAIN EAGAIN @@ -290,6 +306,9 @@ #elif defined(WOLFSSL_NUCLEUS_1_2) #define SEND_FUNCTION NU_Send #define RECV_FUNCTION NU_Recv +#elif defined(FUSION_RTOS) + #define SEND_FUNCTION FNS_SEND + #define RECV_FUNCTION FNS_RECV #elif defined(WOLFSSL_ZEPHYR) #ifndef WOLFSSL_MAX_SEND_SZ #define WOLFSSL_MAX_SEND_SZ 256 @@ -372,6 +391,13 @@ WOLFSSL_API int wolfIO_Recv(SOCKET_T sd, char *buf, int sz, int rdFlags); #define CloseSocket(s) closesocket(s) #endif #define StartTCP() +#elif defined(FUSION_RTOS) + #ifndef CloseSocket + #define CloseSocket(s) do { \ + int err; \ + FNS_CLOSE(s, &err); \ + } while(0) + #endif #else #ifndef CloseSocket #define CloseSocket(s) close(s) @@ -502,9 +528,9 @@ WOLFSSL_API void wolfSSL_SetIOWriteFlags(WOLFSSL* ssl, int flags); } conn; WOLFSSL_CTX *ctx; WOLFSSL *ssl; - uint8_t *input_databuf; - uint8_t *output_databuf; - uint8_t *ssl_rx_databuf; + byte *input_databuf; + byte *output_databuf; + byte *ssl_rx_databuf; int ssl_rb_len; int ssl_rb_off; struct process *process; @@ -512,7 +538,7 @@ WOLFSSL_API void wolfSSL_SetIOWriteFlags(WOLFSSL* ssl, int flags); tcp_socket_event_callback_t event_callback; int closing; uip_ipaddr_t peer_addr; - uint16_t peer_port; + word16 peer_port; }; typedef struct uip_wolfssl_ctx uip_wolfssl_ctx; @@ -591,11 +617,30 @@ WOLFSSL_API void wolfSSL_SetIOWriteFlags(WOLFSSL* ssl, int flags); #define XINET_PTON(a,b,c) InetPton((a),(b),(c)) #endif #endif + #ifndef XHTONS - #define XHTONS(a) htons((a)) + #if !defined(WOLFSSL_NO_SOCK) && (defined(USE_WOLFSSL_IO) || defined(HAVE_HTTP_CLIENT)) + #define XHTONS(a) htons((a)) + #else + /* we don't have sockets, so define our own htons and ntohs */ + #ifdef BIG_ENDIAN_ORDER + #define XHTONS(a) (a) + #else + #define XHTONS(a) ((((a) >> 8) & 0xff) | (((a) & 0xff) << 8)) + #endif + #endif #endif #ifndef XNTOHS - #define XNTOHS(a) ntohs((a)) + #if !defined(WOLFSSL_NO_SOCK) && (defined(USE_WOLFSSL_IO) || defined(HAVE_HTTP_CLIENT)) + #define XNTOHS(a) ntohs((a)) + #else + /* we don't have sockets, so define our own htons and ntohs */ + #ifdef BIG_ENDIAN_ORDER + #define XNTOHS(a) (a) + #else + #define XNTOHS(a) ((((a) >> 8) & 0xff) | (((a) & 0xff) << 8)) + #endif + #endif #endif #ifndef WOLFSSL_IP4 diff --git a/source/list/ListGenerator.hpp b/source/list/ListGenerator.hpp index 7846aee0..6d56977a 100644 --- a/source/list/ListGenerator.hpp +++ b/source/list/ListGenerator.hpp @@ -29,9 +29,7 @@ #include "gui/GameTDB.hpp" #include "plugin/plugin.hpp" -using namespace std; - -class ListGenerator : public vector +class ListGenerator : public std::vector { public: void createSFList(u8 maxBtns, Config &m_sourceMenuCfg, const string& sourceDir); @@ -52,7 +50,7 @@ private: }; typedef void (*FileAdder)(char *Path); -void GetFiles(const char *Path, const vector& FileTypes, +void GetFiles(const char *Path, const std::vector& FileTypes, FileAdder AddFile, bool CompareFolders, u32 max_depth = 2, u32 depth = 1); extern ListGenerator m_cacheList; diff --git a/source/list/cache.hpp b/source/list/cache.hpp index 6ae1dbe1..f3979f53 100644 --- a/source/list/cache.hpp +++ b/source/list/cache.hpp @@ -8,7 +8,8 @@ #include "loader/disc.h" //#include "gecko.hpp" -using namespace std; +using std::string; +using std::vector; const char io[2][3] = { "wb", diff --git a/source/loader/gc_disc_dump.cpp b/source/loader/gc_disc_dump.cpp index e9cb3ef7..fce619ca 100644 --- a/source/loader/gc_disc_dump.cpp +++ b/source/loader/gc_disc_dump.cpp @@ -41,8 +41,6 @@ #include "memory/mem2.hpp" #include "menu/menu.hpp" -using namespace std; - static u8 *FSTable ATTRIBUTE_ALIGN(32); void GCDump::__AnalizeMultiDisc() diff --git a/source/menu/menu.hpp b/source/menu/menu.hpp index c933bd92..3fd64b08 100644 --- a/source/menu/menu.hpp +++ b/source/menu/menu.hpp @@ -32,7 +32,8 @@ #include "wupc/wupc.h" #include "wiidrc/wiidrc.h" -using namespace std; +using std::string; +using std::vector; class CMenu { @@ -808,8 +809,8 @@ private: WO_FORMAT, WO_COPY_GAME, }; - typedef map TexSet; - typedef map SoundSet; + typedef std::map TexSet; + typedef std::map SoundSet; struct SThemeData { TexSet texSet; @@ -1283,8 +1284,8 @@ private: static void * _gameSoundThread(void *obj); void _load_installed_cioses(); - map _installed_cios; - typedef map::iterator CIOSItr; + std::map _installed_cios; + typedef std::map::iterator CIOSItr; struct SOption { const char id[11]; const wchar_t text[16]; }; diff --git a/source/menu/menu_cftheme.cpp b/source/menu/menu_cftheme.cpp index 65695aa2..7fee85d5 100644 --- a/source/menu/menu_cftheme.cpp +++ b/source/menu/menu_cftheme.cpp @@ -1,8 +1,6 @@ #include "menu.hpp" -using namespace std; - const CMenu::SCFParamDesc CMenu::_cfParams[] = { { { CMenu::SCFParamDesc::PDT_V3D, CMenu::SCFParamDesc::PDT_V3D, CMenu::SCFParamDesc::PDT_V3D, CMenu::SCFParamDesc::PDT_V3D }, CMenu::SCFParamDesc::PDD_BOTH, true, "Camera", { "Position", "Aim", "Oscillation speed", "Oscillation scale" }, diff --git a/source/menu/menu_config7.cpp b/source/menu/menu_config7.cpp index 7c8813fc..e6bde39c 100644 --- a/source/menu/menu_config7.cpp +++ b/source/menu/menu_config7.cpp @@ -1,8 +1,6 @@ #include "menu.hpp" -using namespace std; - void CMenu::_hideConfig7(bool instant) { _hideConfigCommon(instant); diff --git a/source/menu/menu_config_adv.cpp b/source/menu/menu_config_adv.cpp index f90fa58b..e1ae5553 100644 --- a/source/menu/menu_config_adv.cpp +++ b/source/menu/menu_config_adv.cpp @@ -3,8 +3,6 @@ #include #include "menu.hpp" -using namespace std; - template static inline T loopNum(T i, T s) { return (i + s) % s; diff --git a/source/menu/menu_paths.cpp b/source/menu/menu_paths.cpp index 1832381a..13bd955c 100644 --- a/source/menu/menu_paths.cpp +++ b/source/menu/menu_paths.cpp @@ -1,8 +1,6 @@ #include "menu.hpp" -using namespace std; - s16 m_pathsLblTitle; s16 m_pathsLblPage; s16 m_pathsBtnPageM; diff --git a/source/menu/menu_source.cpp b/source/menu/menu_source.cpp index 9b22c7b3..434535ce 100644 --- a/source/menu/menu_source.cpp +++ b/source/menu/menu_source.cpp @@ -39,7 +39,7 @@ void CMenu::_sourceFlow() const dir_discHdr *hdr = CoverFlow.getHdr(); // save source number for return - sm_numbers[sm_numbers.size() - 1] = to_string(hdr->settings[0]); + sm_numbers[sm_numbers.size() - 1] = std::to_string(hdr->settings[0]); numbers = sm_numbers[0]; for(u8 i = 1; i < sm_numbers.size(); i++) numbers.append(',' + sm_numbers[i]); @@ -596,7 +596,7 @@ bool CMenu::_Source() { // save source number for return sm_numbers.pop_back(); - sm_numbers.push_back(to_string(i + j)); + sm_numbers.push_back(std::to_string(i + j)); string numbers = sm_numbers[0]; for(u8 i = 1; i < sm_numbers.size(); i++) numbers.append(',' + sm_numbers[i]); diff --git a/source/music/MusicPlayer.cpp b/source/music/MusicPlayer.cpp index 850b86e4..1e6cbb8c 100644 --- a/source/music/MusicPlayer.cpp +++ b/source/music/MusicPlayer.cpp @@ -76,17 +76,17 @@ void Musicplayer::Init(Config &cfg, const string& musicDir, const string& themeM int Musicplayer::InitPlaylist(Config &cfg, const char *playlist, u8 device) { - ifstream filestr; + std::ifstream filestr; filestr.open(playlist); if(filestr.fail()) return 0; - filestr.seekg(0,ios_base::end); + filestr.seekg(0, std::ios_base::end); int size = filestr.tellg(); if(size <= 0) return -1; - filestr.seekg(0,ios_base::beg); + filestr.seekg(0, std::ios_base::beg); string song; FileNames.clear(); diff --git a/source/music/MusicPlayer.hpp b/source/music/MusicPlayer.hpp index 1c84bad1..06db0ac6 100644 --- a/source/music/MusicPlayer.hpp +++ b/source/music/MusicPlayer.hpp @@ -22,8 +22,6 @@ #include "config/config.hpp" #include "wstringEx/wstringEx.hpp" -using namespace std; - class Musicplayer { public: diff --git a/source/music/gui_sound.cpp b/source/music/gui_sound.cpp index 6fcfc0dd..2c69dc8a 100644 --- a/source/music/gui_sound.cpp +++ b/source/music/gui_sound.cpp @@ -37,8 +37,6 @@ #define MAX_SND_VOICES 16 -using namespace std; - static bool VoiceUsed[MAX_SND_VOICES] = { false, false, false, false, false, false, diff --git a/source/plugin/plugin.hpp b/source/plugin/plugin.hpp index 2f5923cf..4828e117 100644 --- a/source/plugin/plugin.hpp +++ b/source/plugin/plugin.hpp @@ -25,7 +25,10 @@ #include "config/config.hpp" #include "loader/disc.h" -using namespace std; +using std::string; +using std::vector; +using std::ifstream; +using std::ios; #define TAG_GAME_ID "{gameid}" #define TAG_LOC "{loc}" diff --git a/source/wstringEx/wstringEx.cpp b/source/wstringEx/wstringEx.cpp index 4c607268..0f9599df 100644 --- a/source/wstringEx/wstringEx.cpp +++ b/source/wstringEx/wstringEx.cpp @@ -2,16 +2,16 @@ #include "wstringEx.hpp" wstringEx::wstringEx(const wchar_t *s) : - basic_string, allocator >(s) + std::basic_string, std::allocator >(s) { } -wstringEx::wstringEx(const basic_string, allocator > &ws) : - basic_string, allocator >(ws) +wstringEx::wstringEx(const std::basic_string, std::allocator > &ws) : + std::basic_string, std::allocator >(ws) { } -wstringEx::wstringEx(const string &s) +wstringEx::wstringEx(const std::string &s) { size_type size = s.size(); resize(size); @@ -19,7 +19,7 @@ wstringEx::wstringEx(const string &s) (*this)[i] = (unsigned char)s[i]; } -wstringEx &wstringEx::operator=(const string &s) +wstringEx &wstringEx::operator=(const std::string &s) { size_type size = s.size(); resize(size); @@ -28,7 +28,7 @@ wstringEx &wstringEx::operator=(const string &s) return *this; } -static inline size_t utf8Len(const string &s) +static inline size_t utf8Len(const std::string &s) { size_t len = 0; @@ -66,7 +66,7 @@ static inline size_t utf8Len(const string &s) return len; } -void wstringEx::fromUTF8(const string &s) +void wstringEx::fromUTF8(const std::string &s) { size_t len = utf8Len(s); @@ -99,9 +99,9 @@ void wstringEx::fromUTF8(const string &s) } } -string wstringEx::toUTF8(void) const +std::string wstringEx::toUTF8(void) const { - string s; + std::string s; size_t len = 0; wchar_t wc; diff --git a/source/wstringEx/wstringEx.hpp b/source/wstringEx/wstringEx.hpp index 50e884b4..1f858d93 100644 --- a/source/wstringEx/wstringEx.hpp +++ b/source/wstringEx/wstringEx.hpp @@ -3,18 +3,17 @@ #define __WSTRINGEX_HPP #include -using namespace std; -class wstringEx : public basic_string, allocator > +class wstringEx : public std::basic_string, std::allocator > { public: wstringEx(void) { } wstringEx(const wchar_t *s); - wstringEx(const basic_string, allocator > &ws); - wstringEx(const string &s); - wstringEx &operator=(const string &s); - void fromUTF8(const string &s); - string toUTF8(void) const; + wstringEx(const std::basic_string, std::allocator > &ws); + wstringEx(const std::string &s); + wstringEx &operator=(const std::string &s); + void fromUTF8(const std::string &s); + std::string toUTF8(void) const; }; #endif // !defined(__WSTRINGEX_HPP)

8Z`<+_DR8F0qpDqyvZYo4c*j zI}r|Uqe81sTTOSeka8Ps@S#R)@J=Jg%;nLtHd4qPNp)!n7Ylm%7M_qFbX;1=C4(~T z0gU{_jXwCx-PrqV7sqW6mk?k8_O_g#glkhF|4BZ(!fyC2J zi={%=0^XEnS_OB=G9b%_5{-0jr-=pp*rUSfxN%Ftt&((-g-;jRT^-`8-O%k&5|2hu zPnbwN5zB5b!>ttQpn-U;#=@oK6us#3JrlB@ip$;~m3_ci{zQWBYnS<&F7@ra#J4Nn zxBFt>lNb4{@xJD9zP)38PqS}4#@7<#dnQ`H>zBS?`Fec6_OX`dd(+4MvDLBGxH9&w zlN5y1tzWG*Qq3tZ>C2V=?O*9@V4 zFH$)#>5J7$99F8OFX{Q?RL=N2)qOANWoq?H`bL%elAa^B6)O8B{q8)q0!Esbwfn}qLbNQW$r zkYz%yRb6H@x-PSVWyVI=lh)_g8@IdGT1VF#H^eNb6L_W9I=kL@Hm10RO9@rhp1X~e z6S-L#dMycT;~bP_u;i9y=(PkZY6E>RZR6*iR?!AFGFCKVKQk)mAVEp$=lvW!=%KUo zN*VT!$$2`4-Ily(3^{4Q!Jhqkg-pd3+l%OqL#}-iA$Rvh*?Zy^vZ(dcIKA)<-$|J1 zEnz3$yV>^ioP$x>r(`ufXM)$V=B_sqZrZZ@qCIhPFyRa1Mn@Q*^Tx?H-&#!Eh3|?K z<3zXP`iMJcy>ayz1a~5IpmNljvRXcQ;L{o-x&?{9JBo8#_ZWEySS#| z!95itKghkZ54R%h5jU!IB^}wXE3Dpf7I{6~=s1FRzm@zswSUgYyef(d9*KA*hrL0gBoViir|vOsVf8K4 zN5;UMF%m9a{B(?+hRA`dHSUshTBq+Z?!1HknUAVb}HWh^dnC6(6wlPg> zZB*(DM2iTm;2_vS+r-gf+9W#A%pb#{pY4JsiGHda_)crd+vGsk8}PE>Jmz#iEP@1E)OY1LoNVBbT5RS)#1)2cZ*D7MockA+ey^8+2#8_uZJ z$!4-(kJ<|#7^){mH`>@o!#r%$O_T(b2RZJ;je5@$%6R*Abu=3jB?ozkG2%_=tvDk6 z^WTlWhzQyN~RooUkKtandHN4s|&(NUWEu zUl^YGbS6Mda&N7??l`N~ZS6DRNitR$sHqC)5eCjR#s}e&@0`2Os;i>czvpqM&oIoK zIl{owLd@2kTKTNoT6uiJj|n}3bei-L4b{!`LoK%&y3&E}@jB_RF;(roUGIACsEXNF zS);WML4`sV9t#UuPSiEuxYcmGJ{=gZoA4t>^!B(~x5IU;KKS5-eMv8{h%yE-bd|JL@1+0#km$N!I9!aZM!yZ>L^ zkQGDfk*RIhOzZh`smz+}!}#}IVsI2#k)P068`uU^A-n5|9t+LW6&EeD2E6PLc|4sp2xH-v;xijghk z`@qv?12KXsMnaFTfFxQZaCj+3a?grS;0)4fW96qj3cSW+GhkUl(G@u`i z66{8gny!Gi*sfIf0z0R_QJo|!D!7sAvWXv>1jb;>4P`@QO9kmt1&qw8VCNFp3t*8Y zFfz1)y}(#Na|P%^!GUcn0g1G~l;S26!2DCbyfO7KpDx~$dj5iHl%FmB!miZA0==o4 Lkydr%MRoHRy;;66 delta 98972 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�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