forked from wolfSSL/wolfssl
Moved to IDE/XCODE. Fixed build warnings with xcode. Updated the user_settings.h
to support fast math, ECC, timing resistance, single precision math, ARMv8, SHA3, ChaCha20/Poly1305, Ed/Curve25519 and ensure default disables are defined. Added Xcode iOS benchmark example. Runs wolfCrypt test, wolfCrypt benchmark and the new TLS benchmark by cipher suite.
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@ -55,6 +55,7 @@ ctaocrypt/benchmark/benchmark
|
||||
ctaocrypt/test/testctaocrypt
|
||||
wolfcrypt/benchmark/benchmark
|
||||
wolfcrypt/test/testwolfcrypt
|
||||
examples/benchmark/tls-bench
|
||||
examples/client/client
|
||||
examples/echoclient/echoclient
|
||||
examples/echoserver/echoserver
|
||||
|
14
IDE/XCODE/Benchmark/include.am
Normal file
14
IDE/XCODE/Benchmark/include.am
Normal file
@ -0,0 +1,14 @@
|
||||
# vim:ft=automake
|
||||
# included from Top Level Makefile.am
|
||||
# All paths should be given relative to the root
|
||||
|
||||
EXTRA_DIST+= IDE/XCODE/Benchmark/wolfBench.xcodeproj/project.pbxproj
|
||||
EXTRA_DIST+= IDE/XCODE/Benchmark/wolfBench/AppDelegate.h
|
||||
EXTRA_DIST+= IDE/XCODE/Benchmark/wolfBench/AppDelegate.m
|
||||
EXTRA_DIST+= IDE/XCODE/Benchmark/wolfBench/Info.plist
|
||||
EXTRA_DIST+= IDE/XCODE/Benchmark/wolfBench/main.m
|
||||
EXTRA_DIST+= IDE/XCODE/Benchmark/wolfBench/ViewController.h
|
||||
EXTRA_DIST+= IDE/XCODE/Benchmark/wolfBench/ViewController.m
|
||||
EXTRA_DIST+= IDE/XCODE/Benchmark/wolfBench/Assets.xcassets/AppIcon.appiconset/Contents.json
|
||||
EXTRA_DIST+= IDE/XCODE/Benchmark/wolfBench/Base.lproj/LaunchScreen.storyboard
|
||||
EXTRA_DIST+= IDE/XCODE/Benchmark/wolfBench/Base.lproj/Main.storyboard
|
653
IDE/XCODE/Benchmark/wolfBench.xcodeproj/project.pbxproj
Normal file
653
IDE/XCODE/Benchmark/wolfBench.xcodeproj/project.pbxproj
Normal file
@ -0,0 +1,653 @@
|
||||
// !$*UTF8*$!
|
||||
{
|
||||
archiveVersion = 1;
|
||||
classes = {
|
||||
};
|
||||
objectVersion = 48;
|
||||
objects = {
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
A47546261FD90492005176B9 /* tls-bench.c in Sources */ = {isa = PBXBuildFile; fileRef = A47546251FD90492005176B9 /* tls-bench.c */; };
|
||||
A4ADF82F1FCE0BD300A06E90 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF82E1FCE0BD300A06E90 /* AppDelegate.m */; };
|
||||
A4ADF8321FCE0BD300A06E90 /* ViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8311FCE0BD300A06E90 /* ViewController.m */; };
|
||||
A4ADF8351FCE0BD300A06E90 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = A4ADF8331FCE0BD300A06E90 /* Main.storyboard */; };
|
||||
A4ADF8371FCE0BD300A06E90 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = A4ADF8361FCE0BD300A06E90 /* Assets.xcassets */; };
|
||||
A4ADF83A1FCE0BD300A06E90 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = A4ADF8381FCE0BD300A06E90 /* LaunchScreen.storyboard */; };
|
||||
A4ADF83D1FCE0BD300A06E90 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF83C1FCE0BD300A06E90 /* main.m */; };
|
||||
A4ADF86B1FCE0C1C00A06E90 /* keys.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8611FCE0C1B00A06E90 /* keys.c */; };
|
||||
A4ADF86C1FCE0C1C00A06E90 /* internal.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8621FCE0C1B00A06E90 /* internal.c */; };
|
||||
A4ADF86D1FCE0C1C00A06E90 /* wolfio.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8631FCE0C1C00A06E90 /* wolfio.c */; };
|
||||
A4ADF86E1FCE0C1C00A06E90 /* ocsp.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8641FCE0C1C00A06E90 /* ocsp.c */; };
|
||||
A4ADF8701FCE0C1C00A06E90 /* tls.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8661FCE0C1C00A06E90 /* tls.c */; };
|
||||
A4ADF8711FCE0C1C00A06E90 /* sniffer.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8671FCE0C1C00A06E90 /* sniffer.c */; };
|
||||
A4ADF8721FCE0C1C00A06E90 /* crl.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8681FCE0C1C00A06E90 /* crl.c */; };
|
||||
A4ADF8731FCE0C1C00A06E90 /* tls13.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8691FCE0C1C00A06E90 /* tls13.c */; };
|
||||
A4ADF8741FCE0C1C00A06E90 /* ssl.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF86A1FCE0C1C00A06E90 /* ssl.c */; };
|
||||
A4ADF8D11FCE0C5600A06E90 /* hmac.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8751FCE0C4C00A06E90 /* hmac.c */; };
|
||||
A4ADF8D31FCE0C5600A06E90 /* random.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8771FCE0C4D00A06E90 /* random.c */; };
|
||||
A4ADF8D51FCE0C5600A06E90 /* md5.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8791FCE0C4D00A06E90 /* md5.c */; };
|
||||
A4ADF8D61FCE0C5600A06E90 /* sha3.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF87A1FCE0C4D00A06E90 /* sha3.c */; };
|
||||
A4ADF8D71FCE0C5600A06E90 /* wolfevent.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF87B1FCE0C4D00A06E90 /* wolfevent.c */; };
|
||||
A4ADF8D81FCE0C5600A06E90 /* md4.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF87C1FCE0C4D00A06E90 /* md4.c */; };
|
||||
A4ADF8D91FCE0C5600A06E90 /* dsa.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF87D1FCE0C4D00A06E90 /* dsa.c */; };
|
||||
A4ADF8DB1FCE0C5600A06E90 /* hc128.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF87F1FCE0C4D00A06E90 /* hc128.c */; };
|
||||
A4ADF8DC1FCE0C5600A06E90 /* curve25519.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8801FCE0C4D00A06E90 /* curve25519.c */; };
|
||||
A4ADF8DD1FCE0C5600A06E90 /* error.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8811FCE0C4D00A06E90 /* error.c */; };
|
||||
A4ADF8DE1FCE0C5600A06E90 /* aes.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8821FCE0C4D00A06E90 /* aes.c */; };
|
||||
A4ADF8DF1FCE0C5600A06E90 /* sha256.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8831FCE0C4D00A06E90 /* sha256.c */; };
|
||||
A4ADF8E01FCE0C5600A06E90 /* ecc_fp.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8841FCE0C4D00A06E90 /* ecc_fp.c */; };
|
||||
A4ADF8E31FCE0C5600A06E90 /* compress.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8871FCE0C4D00A06E90 /* compress.c */; };
|
||||
A4ADF8E41FCE0C5600A06E90 /* tfm.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8881FCE0C4D00A06E90 /* tfm.c */; };
|
||||
A4ADF8E51FCE0C5600A06E90 /* sha.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8891FCE0C4D00A06E90 /* sha.c */; };
|
||||
A4ADF8EA1FCE0C5600A06E90 /* ge_operations.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF88E1FCE0C4E00A06E90 /* ge_operations.c */; };
|
||||
A4ADF8EB1FCE0C5600A06E90 /* chacha20_poly1305.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF88F1FCE0C4E00A06E90 /* chacha20_poly1305.c */; };
|
||||
A4ADF8EE1FCE0C5600A06E90 /* arc4.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8921FCE0C4E00A06E90 /* arc4.c */; };
|
||||
A4ADF8F01FCE0C5600A06E90 /* memory.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8941FCE0C4E00A06E90 /* memory.c */; };
|
||||
A4ADF8F31FCE0C5600A06E90 /* rsa.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8971FCE0C4F00A06E90 /* rsa.c */; };
|
||||
A4ADF8F41FCE0C5600A06E90 /* pkcs7.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8981FCE0C4F00A06E90 /* pkcs7.c */; };
|
||||
A4ADF8F61FCE0C5600A06E90 /* hash.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF89A1FCE0C4F00A06E90 /* hash.c */; };
|
||||
A4ADF8F81FCE0C5600A06E90 /* fe_low_mem.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF89C1FCE0C4F00A06E90 /* fe_low_mem.c */; };
|
||||
A4ADF8FA1FCE0C5600A06E90 /* pkcs12.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF89E1FCE0C4F00A06E90 /* pkcs12.c */; };
|
||||
A4ADF8FC1FCE0C5600A06E90 /* asm.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8A01FCE0C4F00A06E90 /* asm.c */; };
|
||||
A4ADF8FD1FCE0C5600A06E90 /* misc.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8A11FCE0C5000A06E90 /* misc.c */; };
|
||||
A4ADF8FE1FCE0C5600A06E90 /* integer.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8A21FCE0C5000A06E90 /* integer.c */; };
|
||||
A4ADF9001FCE0C5600A06E90 /* poly1305.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8A41FCE0C5000A06E90 /* poly1305.c */; };
|
||||
A4ADF9011FCE0C5600A06E90 /* md2.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8A51FCE0C5000A06E90 /* md2.c */; };
|
||||
A4ADF9041FCE0C5600A06E90 /* des3.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8A81FCE0C5000A06E90 /* des3.c */; };
|
||||
A4ADF9051FCE0C5600A06E90 /* cmac.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8A91FCE0C5000A06E90 /* cmac.c */; };
|
||||
A4ADF9061FCE0C5600A06E90 /* wc_encrypt.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8AA1FCE0C5000A06E90 /* wc_encrypt.c */; };
|
||||
A4ADF9071FCE0C5600A06E90 /* dh.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8AB1FCE0C5000A06E90 /* dh.c */; };
|
||||
A4ADF9091FCE0C5600A06E90 /* idea.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8AD1FCE0C5100A06E90 /* idea.c */; };
|
||||
A4ADF90A1FCE0C5600A06E90 /* sha512.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8AE1FCE0C5100A06E90 /* sha512.c */; };
|
||||
A4ADF90B1FCE0C5600A06E90 /* logging.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8AF1FCE0C5100A06E90 /* logging.c */; };
|
||||
A4ADF90C1FCE0C5600A06E90 /* ripemd.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8B01FCE0C5100A06E90 /* ripemd.c */; };
|
||||
A4ADF90D1FCE0C5600A06E90 /* blake2b.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8B11FCE0C5100A06E90 /* blake2b.c */; };
|
||||
A4ADF9101FCE0C5600A06E90 /* rabbit.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8B41FCE0C5200A06E90 /* rabbit.c */; };
|
||||
A4ADF9121FCE0C5600A06E90 /* wc_port.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8B61FCE0C5200A06E90 /* wc_port.c */; };
|
||||
A4ADF9131FCE0C5600A06E90 /* signature.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8B71FCE0C5200A06E90 /* signature.c */; };
|
||||
A4ADF9141FCE0C5600A06E90 /* wolfmath.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8B81FCE0C5200A06E90 /* wolfmath.c */; };
|
||||
A4ADF9161FCE0C5600A06E90 /* fe_operations.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8BA1FCE0C5300A06E90 /* fe_operations.c */; };
|
||||
A4ADF91A1FCE0C5600A06E90 /* sp.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8BE1FCE0C5300A06E90 /* sp.c */; };
|
||||
A4ADF91B1FCE0C5600A06E90 /* srp.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8BF1FCE0C5300A06E90 /* srp.c */; };
|
||||
A4ADF91C1FCE0C5600A06E90 /* pwdbased.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8C01FCE0C5300A06E90 /* pwdbased.c */; };
|
||||
A4ADF91D1FCE0C5600A06E90 /* cpuid.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8C11FCE0C5300A06E90 /* cpuid.c */; };
|
||||
A4ADF91E1FCE0C5600A06E90 /* asn.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8C21FCE0C5300A06E90 /* asn.c */; };
|
||||
A4ADF91F1FCE0C5600A06E90 /* async.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8C31FCE0C5400A06E90 /* async.c */; };
|
||||
A4ADF9231FCE0C5600A06E90 /* camellia.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8C71FCE0C5400A06E90 /* camellia.c */; };
|
||||
A4ADF9261FCE0C5600A06E90 /* chacha.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8CA1FCE0C5500A06E90 /* chacha.c */; };
|
||||
A4ADF9271FCE0C5600A06E90 /* ed25519.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8CB1FCE0C5500A06E90 /* ed25519.c */; };
|
||||
A4ADF9281FCE0C5600A06E90 /* ecc.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8CC1FCE0C5500A06E90 /* ecc.c */; };
|
||||
A4ADF92A1FCE0C5600A06E90 /* coding.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8CE1FCE0C5500A06E90 /* coding.c */; };
|
||||
A4ADF92C1FCE0C5600A06E90 /* ge_low_mem.c in Sources */ = {isa = PBXBuildFile; fileRef = A4ADF8D01FCE0C5500A06E90 /* ge_low_mem.c */; };
|
||||
A4DFEC0D1FD4CAA300A7BB33 /* benchmark.c in Sources */ = {isa = PBXBuildFile; fileRef = A4DFEC0C1FD4CAA300A7BB33 /* benchmark.c */; };
|
||||
A4DFEC101FD4CB8500A7BB33 /* armv8-sha256.c in Sources */ = {isa = PBXBuildFile; fileRef = A4DFEC0E1FD4CB8500A7BB33 /* armv8-sha256.c */; };
|
||||
A4DFEC111FD4CB8500A7BB33 /* armv8-aes.c in Sources */ = {isa = PBXBuildFile; fileRef = A4DFEC0F1FD4CB8500A7BB33 /* armv8-aes.c */; };
|
||||
A4DFEC3C1FD6B9CC00A7BB33 /* test.c in Sources */ = {isa = PBXBuildFile; fileRef = A4DFEC3B1FD6B9CC00A7BB33 /* test.c */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
A47546241FD9042D005176B9 /* user_settings.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = user_settings.h; path = ../user_settings.h; sourceTree = "<group>"; };
|
||||
A47546251FD90492005176B9 /* tls-bench.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = "tls-bench.c"; path = "../../../examples/benchmark/tls-bench.c"; sourceTree = "<group>"; };
|
||||
A4ADF82A1FCE0BD300A06E90 /* wolfBench.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = wolfBench.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
A4ADF82D1FCE0BD300A06E90 /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = "<group>"; };
|
||||
A4ADF82E1FCE0BD300A06E90 /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = "<group>"; };
|
||||
A4ADF8301FCE0BD300A06E90 /* ViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ViewController.h; sourceTree = "<group>"; };
|
||||
A4ADF8311FCE0BD300A06E90 /* ViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ViewController.m; sourceTree = "<group>"; };
|
||||
A4ADF8341FCE0BD300A06E90 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
|
||||
A4ADF8361FCE0BD300A06E90 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
|
||||
A4ADF8391FCE0BD300A06E90 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
|
||||
A4ADF83B1FCE0BD300A06E90 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
A4ADF83C1FCE0BD300A06E90 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
|
||||
A4ADF8611FCE0C1B00A06E90 /* keys.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = keys.c; path = ../../../src/keys.c; sourceTree = "<group>"; };
|
||||
A4ADF8621FCE0C1B00A06E90 /* internal.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = internal.c; path = ../../../src/internal.c; sourceTree = "<group>"; };
|
||||
A4ADF8631FCE0C1C00A06E90 /* wolfio.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = wolfio.c; path = ../../../src/wolfio.c; sourceTree = "<group>"; };
|
||||
A4ADF8641FCE0C1C00A06E90 /* ocsp.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = ocsp.c; path = ../../../src/ocsp.c; sourceTree = "<group>"; };
|
||||
A4ADF8661FCE0C1C00A06E90 /* tls.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = tls.c; path = ../../../src/tls.c; sourceTree = "<group>"; };
|
||||
A4ADF8671FCE0C1C00A06E90 /* sniffer.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = sniffer.c; path = ../../../src/sniffer.c; sourceTree = "<group>"; };
|
||||
A4ADF8681FCE0C1C00A06E90 /* crl.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = crl.c; path = ../../../src/crl.c; sourceTree = "<group>"; };
|
||||
A4ADF8691FCE0C1C00A06E90 /* tls13.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = tls13.c; path = ../../../src/tls13.c; sourceTree = "<group>"; };
|
||||
A4ADF86A1FCE0C1C00A06E90 /* ssl.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = ssl.c; path = ../../../src/ssl.c; sourceTree = "<group>"; };
|
||||
A4ADF8751FCE0C4C00A06E90 /* hmac.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = hmac.c; path = ../../../wolfcrypt/src/hmac.c; sourceTree = "<group>"; };
|
||||
A4ADF8771FCE0C4D00A06E90 /* random.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = random.c; path = ../../../wolfcrypt/src/random.c; sourceTree = "<group>"; };
|
||||
A4ADF8791FCE0C4D00A06E90 /* md5.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = md5.c; path = ../../../wolfcrypt/src/md5.c; sourceTree = "<group>"; };
|
||||
A4ADF87A1FCE0C4D00A06E90 /* sha3.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = sha3.c; path = ../../../wolfcrypt/src/sha3.c; sourceTree = "<group>"; };
|
||||
A4ADF87B1FCE0C4D00A06E90 /* wolfevent.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = wolfevent.c; path = ../../../wolfcrypt/src/wolfevent.c; sourceTree = "<group>"; };
|
||||
A4ADF87C1FCE0C4D00A06E90 /* md4.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = md4.c; path = ../../../wolfcrypt/src/md4.c; sourceTree = "<group>"; };
|
||||
A4ADF87D1FCE0C4D00A06E90 /* dsa.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = dsa.c; path = ../../../wolfcrypt/src/dsa.c; sourceTree = "<group>"; };
|
||||
A4ADF87F1FCE0C4D00A06E90 /* hc128.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = hc128.c; path = ../../../wolfcrypt/src/hc128.c; sourceTree = "<group>"; };
|
||||
A4ADF8801FCE0C4D00A06E90 /* curve25519.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = curve25519.c; path = ../../../wolfcrypt/src/curve25519.c; sourceTree = "<group>"; };
|
||||
A4ADF8811FCE0C4D00A06E90 /* error.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = error.c; path = ../../../wolfcrypt/src/error.c; sourceTree = "<group>"; };
|
||||
A4ADF8821FCE0C4D00A06E90 /* aes.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = aes.c; path = ../../../wolfcrypt/src/aes.c; sourceTree = "<group>"; };
|
||||
A4ADF8831FCE0C4D00A06E90 /* sha256.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = sha256.c; path = ../../../wolfcrypt/src/sha256.c; sourceTree = "<group>"; };
|
||||
A4ADF8841FCE0C4D00A06E90 /* ecc_fp.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = ecc_fp.c; path = ../../../wolfcrypt/src/ecc_fp.c; sourceTree = "<group>"; };
|
||||
A4ADF8871FCE0C4D00A06E90 /* compress.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = compress.c; path = ../../../wolfcrypt/src/compress.c; sourceTree = "<group>"; };
|
||||
A4ADF8881FCE0C4D00A06E90 /* tfm.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = tfm.c; path = ../../../wolfcrypt/src/tfm.c; sourceTree = "<group>"; };
|
||||
A4ADF8891FCE0C4D00A06E90 /* sha.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = sha.c; path = ../../../wolfcrypt/src/sha.c; sourceTree = "<group>"; };
|
||||
A4ADF88E1FCE0C4E00A06E90 /* ge_operations.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = ge_operations.c; path = ../../../wolfcrypt/src/ge_operations.c; sourceTree = "<group>"; };
|
||||
A4ADF88F1FCE0C4E00A06E90 /* chacha20_poly1305.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = chacha20_poly1305.c; path = ../../../wolfcrypt/src/chacha20_poly1305.c; sourceTree = "<group>"; };
|
||||
A4ADF8921FCE0C4E00A06E90 /* arc4.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = arc4.c; path = ../../../wolfcrypt/src/arc4.c; sourceTree = "<group>"; };
|
||||
A4ADF8941FCE0C4E00A06E90 /* memory.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = memory.c; path = ../../../wolfcrypt/src/memory.c; sourceTree = "<group>"; };
|
||||
A4ADF8971FCE0C4F00A06E90 /* rsa.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = rsa.c; path = ../../../wolfcrypt/src/rsa.c; sourceTree = "<group>"; };
|
||||
A4ADF8981FCE0C4F00A06E90 /* pkcs7.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = pkcs7.c; path = ../../../wolfcrypt/src/pkcs7.c; sourceTree = "<group>"; };
|
||||
A4ADF89A1FCE0C4F00A06E90 /* hash.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = hash.c; path = ../../../wolfcrypt/src/hash.c; sourceTree = "<group>"; };
|
||||
A4ADF89C1FCE0C4F00A06E90 /* fe_low_mem.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = fe_low_mem.c; path = ../../../wolfcrypt/src/fe_low_mem.c; sourceTree = "<group>"; };
|
||||
A4ADF89E1FCE0C4F00A06E90 /* pkcs12.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = pkcs12.c; path = ../../../wolfcrypt/src/pkcs12.c; sourceTree = "<group>"; };
|
||||
A4ADF8A01FCE0C4F00A06E90 /* asm.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = asm.c; path = ../../../wolfcrypt/src/asm.c; sourceTree = "<group>"; };
|
||||
A4ADF8A11FCE0C5000A06E90 /* misc.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = misc.c; path = ../../../wolfcrypt/src/misc.c; sourceTree = "<group>"; };
|
||||
A4ADF8A21FCE0C5000A06E90 /* integer.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = integer.c; path = ../../../wolfcrypt/src/integer.c; sourceTree = "<group>"; };
|
||||
A4ADF8A41FCE0C5000A06E90 /* poly1305.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = poly1305.c; path = ../../../wolfcrypt/src/poly1305.c; sourceTree = "<group>"; };
|
||||
A4ADF8A51FCE0C5000A06E90 /* md2.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = md2.c; path = ../../../wolfcrypt/src/md2.c; sourceTree = "<group>"; };
|
||||
A4ADF8A81FCE0C5000A06E90 /* des3.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = des3.c; path = ../../../wolfcrypt/src/des3.c; sourceTree = "<group>"; };
|
||||
A4ADF8A91FCE0C5000A06E90 /* cmac.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = cmac.c; path = ../../../wolfcrypt/src/cmac.c; sourceTree = "<group>"; };
|
||||
A4ADF8AA1FCE0C5000A06E90 /* wc_encrypt.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = wc_encrypt.c; path = ../../../wolfcrypt/src/wc_encrypt.c; sourceTree = "<group>"; };
|
||||
A4ADF8AB1FCE0C5000A06E90 /* dh.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = dh.c; path = ../../../wolfcrypt/src/dh.c; sourceTree = "<group>"; };
|
||||
A4ADF8AD1FCE0C5100A06E90 /* idea.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = idea.c; path = ../../../wolfcrypt/src/idea.c; sourceTree = "<group>"; };
|
||||
A4ADF8AE1FCE0C5100A06E90 /* sha512.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = sha512.c; path = ../../../wolfcrypt/src/sha512.c; sourceTree = "<group>"; };
|
||||
A4ADF8AF1FCE0C5100A06E90 /* logging.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = logging.c; path = ../../../wolfcrypt/src/logging.c; sourceTree = "<group>"; };
|
||||
A4ADF8B01FCE0C5100A06E90 /* ripemd.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = ripemd.c; path = ../../../wolfcrypt/src/ripemd.c; sourceTree = "<group>"; };
|
||||
A4ADF8B11FCE0C5100A06E90 /* blake2b.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = blake2b.c; path = ../../../wolfcrypt/src/blake2b.c; sourceTree = "<group>"; };
|
||||
A4ADF8B41FCE0C5200A06E90 /* rabbit.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = rabbit.c; path = ../../../wolfcrypt/src/rabbit.c; sourceTree = "<group>"; };
|
||||
A4ADF8B61FCE0C5200A06E90 /* wc_port.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = wc_port.c; path = ../../../wolfcrypt/src/wc_port.c; sourceTree = "<group>"; };
|
||||
A4ADF8B71FCE0C5200A06E90 /* signature.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = signature.c; path = ../../../wolfcrypt/src/signature.c; sourceTree = "<group>"; };
|
||||
A4ADF8B81FCE0C5200A06E90 /* wolfmath.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = wolfmath.c; path = ../../../wolfcrypt/src/wolfmath.c; sourceTree = "<group>"; };
|
||||
A4ADF8BA1FCE0C5300A06E90 /* fe_operations.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = fe_operations.c; path = ../../../wolfcrypt/src/fe_operations.c; sourceTree = "<group>"; };
|
||||
A4ADF8BE1FCE0C5300A06E90 /* sp.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = sp.c; path = ../../../wolfcrypt/src/sp.c; sourceTree = "<group>"; };
|
||||
A4ADF8BF1FCE0C5300A06E90 /* srp.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = srp.c; path = ../../../wolfcrypt/src/srp.c; sourceTree = "<group>"; };
|
||||
A4ADF8C01FCE0C5300A06E90 /* pwdbased.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = pwdbased.c; path = ../../../wolfcrypt/src/pwdbased.c; sourceTree = "<group>"; };
|
||||
A4ADF8C11FCE0C5300A06E90 /* cpuid.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = cpuid.c; path = ../../../wolfcrypt/src/cpuid.c; sourceTree = "<group>"; };
|
||||
A4ADF8C21FCE0C5300A06E90 /* asn.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = asn.c; path = ../../../wolfcrypt/src/asn.c; sourceTree = "<group>"; };
|
||||
A4ADF8C31FCE0C5400A06E90 /* async.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = async.c; path = ../../../../wolfAsyncCrypt/wolfcrypt/src/async.c; sourceTree = "<group>"; };
|
||||
A4ADF8C71FCE0C5400A06E90 /* camellia.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = camellia.c; path = ../../../wolfcrypt/src/camellia.c; sourceTree = "<group>"; };
|
||||
A4ADF8CA1FCE0C5500A06E90 /* chacha.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = chacha.c; path = ../../../wolfcrypt/src/chacha.c; sourceTree = "<group>"; };
|
||||
A4ADF8CB1FCE0C5500A06E90 /* ed25519.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = ed25519.c; path = ../../../wolfcrypt/src/ed25519.c; sourceTree = "<group>"; };
|
||||
A4ADF8CC1FCE0C5500A06E90 /* ecc.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = ecc.c; path = ../../../wolfcrypt/src/ecc.c; sourceTree = "<group>"; };
|
||||
A4ADF8CE1FCE0C5500A06E90 /* coding.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = coding.c; path = ../../../wolfcrypt/src/coding.c; sourceTree = "<group>"; };
|
||||
A4ADF8D01FCE0C5500A06E90 /* ge_low_mem.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = ge_low_mem.c; path = ../../../wolfcrypt/src/ge_low_mem.c; sourceTree = "<group>"; };
|
||||
A4DFEC0C1FD4CAA300A7BB33 /* benchmark.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = benchmark.c; path = ../../../wolfcrypt/benchmark/benchmark.c; sourceTree = "<group>"; };
|
||||
A4DFEC0E1FD4CB8500A7BB33 /* armv8-sha256.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = "armv8-sha256.c"; path = "../../../wolfcrypt/src/port/arm/armv8-sha256.c"; sourceTree = "<group>"; };
|
||||
A4DFEC0F1FD4CB8500A7BB33 /* armv8-aes.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = "armv8-aes.c"; path = "../../../wolfcrypt/src/port/arm/armv8-aes.c"; sourceTree = "<group>"; };
|
||||
A4DFEC3B1FD6B9CC00A7BB33 /* test.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = test.c; path = ../../../wolfcrypt/test/test.c; sourceTree = "<group>"; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
A4ADF8271FCE0BD300A06E90 /* Frameworks */ = {
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXFrameworksBuildPhase section */
|
||||
|
||||
/* Begin PBXGroup section */
|
||||
A4ADF8211FCE0BD300A06E90 = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
A47546251FD90492005176B9 /* tls-bench.c */,
|
||||
A47546241FD9042D005176B9 /* user_settings.h */,
|
||||
A4ADF85F1FCE0BE300A06E90 /* wolfSSL */,
|
||||
A4ADF82C1FCE0BD300A06E90 /* wolfBench */,
|
||||
A4ADF82B1FCE0BD300A06E90 /* Products */,
|
||||
);
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
A4ADF82B1FCE0BD300A06E90 /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
A4ADF82A1FCE0BD300A06E90 /* wolfBench.app */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
A4ADF82C1FCE0BD300A06E90 /* wolfBench */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
A4ADF82D1FCE0BD300A06E90 /* AppDelegate.h */,
|
||||
A4ADF82E1FCE0BD300A06E90 /* AppDelegate.m */,
|
||||
A4ADF8301FCE0BD300A06E90 /* ViewController.h */,
|
||||
A4ADF8311FCE0BD300A06E90 /* ViewController.m */,
|
||||
A4ADF8331FCE0BD300A06E90 /* Main.storyboard */,
|
||||
A4ADF8361FCE0BD300A06E90 /* Assets.xcassets */,
|
||||
A4ADF8381FCE0BD300A06E90 /* LaunchScreen.storyboard */,
|
||||
A4ADF83B1FCE0BD300A06E90 /* Info.plist */,
|
||||
A4ADF83C1FCE0BD300A06E90 /* main.m */,
|
||||
);
|
||||
path = wolfBench;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
A4ADF85F1FCE0BE300A06E90 /* wolfSSL */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
A4DFEC3A1FD6B9B600A7BB33 /* test */,
|
||||
A4DFEC0B1FD4CA8300A7BB33 /* benchmark */,
|
||||
A4ADF8681FCE0C1C00A06E90 /* crl.c */,
|
||||
A4ADF8621FCE0C1B00A06E90 /* internal.c */,
|
||||
A4ADF8611FCE0C1B00A06E90 /* keys.c */,
|
||||
A4ADF8641FCE0C1C00A06E90 /* ocsp.c */,
|
||||
A4ADF8671FCE0C1C00A06E90 /* sniffer.c */,
|
||||
A4ADF86A1FCE0C1C00A06E90 /* ssl.c */,
|
||||
A4ADF8661FCE0C1C00A06E90 /* tls.c */,
|
||||
A4ADF8691FCE0C1C00A06E90 /* tls13.c */,
|
||||
A4ADF8631FCE0C1C00A06E90 /* wolfio.c */,
|
||||
A4ADF8601FCE0BFB00A06E90 /* wolfCrypt */,
|
||||
);
|
||||
name = wolfSSL;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
A4ADF8601FCE0BFB00A06E90 /* wolfCrypt */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
A4DFEC0F1FD4CB8500A7BB33 /* armv8-aes.c */,
|
||||
A4DFEC0E1FD4CB8500A7BB33 /* armv8-sha256.c */,
|
||||
A4ADF8821FCE0C4D00A06E90 /* aes.c */,
|
||||
A4ADF8921FCE0C4E00A06E90 /* arc4.c */,
|
||||
A4ADF8A01FCE0C4F00A06E90 /* asm.c */,
|
||||
A4ADF8C21FCE0C5300A06E90 /* asn.c */,
|
||||
A4ADF8C31FCE0C5400A06E90 /* async.c */,
|
||||
A4ADF8B11FCE0C5100A06E90 /* blake2b.c */,
|
||||
A4ADF8C71FCE0C5400A06E90 /* camellia.c */,
|
||||
A4ADF8CA1FCE0C5500A06E90 /* chacha.c */,
|
||||
A4ADF88F1FCE0C4E00A06E90 /* chacha20_poly1305.c */,
|
||||
A4ADF8A91FCE0C5000A06E90 /* cmac.c */,
|
||||
A4ADF8CE1FCE0C5500A06E90 /* coding.c */,
|
||||
A4ADF8871FCE0C4D00A06E90 /* compress.c */,
|
||||
A4ADF8C11FCE0C5300A06E90 /* cpuid.c */,
|
||||
A4ADF8801FCE0C4D00A06E90 /* curve25519.c */,
|
||||
A4ADF8A81FCE0C5000A06E90 /* des3.c */,
|
||||
A4ADF8AB1FCE0C5000A06E90 /* dh.c */,
|
||||
A4ADF87D1FCE0C4D00A06E90 /* dsa.c */,
|
||||
A4ADF8841FCE0C4D00A06E90 /* ecc_fp.c */,
|
||||
A4ADF8CC1FCE0C5500A06E90 /* ecc.c */,
|
||||
A4ADF8CB1FCE0C5500A06E90 /* ed25519.c */,
|
||||
A4ADF8811FCE0C4D00A06E90 /* error.c */,
|
||||
A4ADF89C1FCE0C4F00A06E90 /* fe_low_mem.c */,
|
||||
A4ADF8BA1FCE0C5300A06E90 /* fe_operations.c */,
|
||||
A4ADF8D01FCE0C5500A06E90 /* ge_low_mem.c */,
|
||||
A4ADF88E1FCE0C4E00A06E90 /* ge_operations.c */,
|
||||
A4ADF89A1FCE0C4F00A06E90 /* hash.c */,
|
||||
A4ADF87F1FCE0C4D00A06E90 /* hc128.c */,
|
||||
A4ADF8751FCE0C4C00A06E90 /* hmac.c */,
|
||||
A4ADF8AD1FCE0C5100A06E90 /* idea.c */,
|
||||
A4ADF8A21FCE0C5000A06E90 /* integer.c */,
|
||||
A4ADF8AF1FCE0C5100A06E90 /* logging.c */,
|
||||
A4ADF8A51FCE0C5000A06E90 /* md2.c */,
|
||||
A4ADF87C1FCE0C4D00A06E90 /* md4.c */,
|
||||
A4ADF8791FCE0C4D00A06E90 /* md5.c */,
|
||||
A4ADF8941FCE0C4E00A06E90 /* memory.c */,
|
||||
A4ADF8A11FCE0C5000A06E90 /* misc.c */,
|
||||
A4ADF8981FCE0C4F00A06E90 /* pkcs7.c */,
|
||||
A4ADF89E1FCE0C4F00A06E90 /* pkcs12.c */,
|
||||
A4ADF8A41FCE0C5000A06E90 /* poly1305.c */,
|
||||
A4ADF8C01FCE0C5300A06E90 /* pwdbased.c */,
|
||||
A4ADF8B41FCE0C5200A06E90 /* rabbit.c */,
|
||||
A4ADF8771FCE0C4D00A06E90 /* random.c */,
|
||||
A4ADF8B01FCE0C5100A06E90 /* ripemd.c */,
|
||||
A4ADF8971FCE0C4F00A06E90 /* rsa.c */,
|
||||
A4ADF8891FCE0C4D00A06E90 /* sha.c */,
|
||||
A4ADF87A1FCE0C4D00A06E90 /* sha3.c */,
|
||||
A4ADF8831FCE0C4D00A06E90 /* sha256.c */,
|
||||
A4ADF8AE1FCE0C5100A06E90 /* sha512.c */,
|
||||
A4ADF8B71FCE0C5200A06E90 /* signature.c */,
|
||||
A4ADF8BE1FCE0C5300A06E90 /* sp.c */,
|
||||
A4ADF8BF1FCE0C5300A06E90 /* srp.c */,
|
||||
A4ADF8881FCE0C4D00A06E90 /* tfm.c */,
|
||||
A4ADF8AA1FCE0C5000A06E90 /* wc_encrypt.c */,
|
||||
A4ADF8B61FCE0C5200A06E90 /* wc_port.c */,
|
||||
A4ADF87B1FCE0C4D00A06E90 /* wolfevent.c */,
|
||||
A4ADF8B81FCE0C5200A06E90 /* wolfmath.c */,
|
||||
);
|
||||
name = wolfCrypt;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
A4DFEC0B1FD4CA8300A7BB33 /* benchmark */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
A4DFEC0C1FD4CAA300A7BB33 /* benchmark.c */,
|
||||
);
|
||||
name = benchmark;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
A4DFEC3A1FD6B9B600A7BB33 /* test */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
A4DFEC3B1FD6B9CC00A7BB33 /* test.c */,
|
||||
);
|
||||
name = test;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXGroup section */
|
||||
|
||||
/* Begin PBXNativeTarget section */
|
||||
A4ADF8291FCE0BD300A06E90 /* wolfBench */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = A4ADF8561FCE0BD300A06E90 /* Build configuration list for PBXNativeTarget "wolfBench" */;
|
||||
buildPhases = (
|
||||
A4ADF8261FCE0BD300A06E90 /* Sources */,
|
||||
A4ADF8271FCE0BD300A06E90 /* Frameworks */,
|
||||
A4ADF8281FCE0BD300A06E90 /* Resources */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
dependencies = (
|
||||
);
|
||||
name = wolfBench;
|
||||
productName = wolfBench;
|
||||
productReference = A4ADF82A1FCE0BD300A06E90 /* wolfBench.app */;
|
||||
productType = "com.apple.product-type.application";
|
||||
};
|
||||
/* End PBXNativeTarget section */
|
||||
|
||||
/* Begin PBXProject section */
|
||||
A4ADF8221FCE0BD300A06E90 /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
attributes = {
|
||||
LastUpgradeCheck = 0910;
|
||||
ORGANIZATIONNAME = "David Garske";
|
||||
TargetAttributes = {
|
||||
A4ADF8291FCE0BD300A06E90 = {
|
||||
CreatedOnToolsVersion = 9.1;
|
||||
ProvisioningStyle = Automatic;
|
||||
};
|
||||
};
|
||||
};
|
||||
buildConfigurationList = A4ADF8251FCE0BD300A06E90 /* Build configuration list for PBXProject "wolfBench" */;
|
||||
compatibilityVersion = "Xcode 8.0";
|
||||
developmentRegion = en;
|
||||
hasScannedForEncodings = 0;
|
||||
knownRegions = (
|
||||
en,
|
||||
Base,
|
||||
);
|
||||
mainGroup = A4ADF8211FCE0BD300A06E90;
|
||||
productRefGroup = A4ADF82B1FCE0BD300A06E90 /* Products */;
|
||||
projectDirPath = "";
|
||||
projectRoot = "";
|
||||
targets = (
|
||||
A4ADF8291FCE0BD300A06E90 /* wolfBench */,
|
||||
);
|
||||
};
|
||||
/* End PBXProject section */
|
||||
|
||||
/* Begin PBXResourcesBuildPhase section */
|
||||
A4ADF8281FCE0BD300A06E90 /* Resources */ = {
|
||||
isa = PBXResourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
A4ADF83A1FCE0BD300A06E90 /* LaunchScreen.storyboard in Resources */,
|
||||
A4ADF8371FCE0BD300A06E90 /* Assets.xcassets in Resources */,
|
||||
A4ADF8351FCE0BD300A06E90 /* Main.storyboard in Resources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXResourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXSourcesBuildPhase section */
|
||||
A4ADF8261FCE0BD300A06E90 /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
A4ADF9041FCE0C5600A06E90 /* des3.c in Sources */,
|
||||
A4ADF9121FCE0C5600A06E90 /* wc_port.c in Sources */,
|
||||
A4ADF8E41FCE0C5600A06E90 /* tfm.c in Sources */,
|
||||
A4ADF8D91FCE0C5600A06E90 /* dsa.c in Sources */,
|
||||
A4ADF9141FCE0C5600A06E90 /* wolfmath.c in Sources */,
|
||||
A4ADF8FC1FCE0C5600A06E90 /* asm.c in Sources */,
|
||||
A4ADF8721FCE0C1C00A06E90 /* crl.c in Sources */,
|
||||
A4ADF91F1FCE0C5600A06E90 /* async.c in Sources */,
|
||||
A4ADF91B1FCE0C5600A06E90 /* srp.c in Sources */,
|
||||
A4ADF9101FCE0C5600A06E90 /* rabbit.c in Sources */,
|
||||
A4ADF9091FCE0C5600A06E90 /* idea.c in Sources */,
|
||||
A4ADF8FE1FCE0C5600A06E90 /* integer.c in Sources */,
|
||||
A4ADF9231FCE0C5600A06E90 /* camellia.c in Sources */,
|
||||
A4ADF8321FCE0BD300A06E90 /* ViewController.m in Sources */,
|
||||
A4ADF8DB1FCE0C5600A06E90 /* hc128.c in Sources */,
|
||||
A4ADF8E31FCE0C5600A06E90 /* compress.c in Sources */,
|
||||
A4ADF8731FCE0C1C00A06E90 /* tls13.c in Sources */,
|
||||
A4ADF90D1FCE0C5600A06E90 /* blake2b.c in Sources */,
|
||||
A4ADF9071FCE0C5600A06E90 /* dh.c in Sources */,
|
||||
A4ADF8F31FCE0C5600A06E90 /* rsa.c in Sources */,
|
||||
A4ADF8FA1FCE0C5600A06E90 /* pkcs12.c in Sources */,
|
||||
A4ADF86E1FCE0C1C00A06E90 /* ocsp.c in Sources */,
|
||||
A4ADF9281FCE0C5600A06E90 /* ecc.c in Sources */,
|
||||
A4ADF91C1FCE0C5600A06E90 /* pwdbased.c in Sources */,
|
||||
A4ADF92C1FCE0C5600A06E90 /* ge_low_mem.c in Sources */,
|
||||
A4ADF90C1FCE0C5600A06E90 /* ripemd.c in Sources */,
|
||||
A4ADF8D51FCE0C5600A06E90 /* md5.c in Sources */,
|
||||
A4ADF8DF1FCE0C5600A06E90 /* sha256.c in Sources */,
|
||||
A4ADF8711FCE0C1C00A06E90 /* sniffer.c in Sources */,
|
||||
A4ADF8701FCE0C1C00A06E90 /* tls.c in Sources */,
|
||||
A4ADF8E51FCE0C5600A06E90 /* sha.c in Sources */,
|
||||
A4DFEC101FD4CB8500A7BB33 /* armv8-sha256.c in Sources */,
|
||||
A4ADF83D1FCE0BD300A06E90 /* main.m in Sources */,
|
||||
A4ADF9271FCE0C5600A06E90 /* ed25519.c in Sources */,
|
||||
A4ADF8D11FCE0C5600A06E90 /* hmac.c in Sources */,
|
||||
A4ADF8F01FCE0C5600A06E90 /* memory.c in Sources */,
|
||||
A4ADF82F1FCE0BD300A06E90 /* AppDelegate.m in Sources */,
|
||||
A4ADF8D31FCE0C5600A06E90 /* random.c in Sources */,
|
||||
A4ADF9131FCE0C5600A06E90 /* signature.c in Sources */,
|
||||
A4DFEC3C1FD6B9CC00A7BB33 /* test.c in Sources */,
|
||||
A4ADF8FD1FCE0C5600A06E90 /* misc.c in Sources */,
|
||||
A4ADF9261FCE0C5600A06E90 /* chacha.c in Sources */,
|
||||
A4ADF8DD1FCE0C5600A06E90 /* error.c in Sources */,
|
||||
A4ADF90A1FCE0C5600A06E90 /* sha512.c in Sources */,
|
||||
A4ADF91E1FCE0C5600A06E90 /* asn.c in Sources */,
|
||||
A4ADF8F61FCE0C5600A06E90 /* hash.c in Sources */,
|
||||
A4ADF92A1FCE0C5600A06E90 /* coding.c in Sources */,
|
||||
A4ADF8741FCE0C1C00A06E90 /* ssl.c in Sources */,
|
||||
A4ADF9051FCE0C5600A06E90 /* cmac.c in Sources */,
|
||||
A4ADF8F41FCE0C5600A06E90 /* pkcs7.c in Sources */,
|
||||
A4ADF90B1FCE0C5600A06E90 /* logging.c in Sources */,
|
||||
A4ADF8E01FCE0C5600A06E90 /* ecc_fp.c in Sources */,
|
||||
A4ADF8EB1FCE0C5600A06E90 /* chacha20_poly1305.c in Sources */,
|
||||
A4ADF86B1FCE0C1C00A06E90 /* keys.c in Sources */,
|
||||
A4ADF8EE1FCE0C5600A06E90 /* arc4.c in Sources */,
|
||||
A4DFEC111FD4CB8500A7BB33 /* armv8-aes.c in Sources */,
|
||||
A4ADF9061FCE0C5600A06E90 /* wc_encrypt.c in Sources */,
|
||||
A4ADF8DC1FCE0C5600A06E90 /* curve25519.c in Sources */,
|
||||
A4ADF8D81FCE0C5600A06E90 /* md4.c in Sources */,
|
||||
A4ADF8EA1FCE0C5600A06E90 /* ge_operations.c in Sources */,
|
||||
A4ADF8DE1FCE0C5600A06E90 /* aes.c in Sources */,
|
||||
A4ADF86C1FCE0C1C00A06E90 /* internal.c in Sources */,
|
||||
A4ADF9011FCE0C5600A06E90 /* md2.c in Sources */,
|
||||
A4ADF8D61FCE0C5600A06E90 /* sha3.c in Sources */,
|
||||
A47546261FD90492005176B9 /* tls-bench.c in Sources */,
|
||||
A4ADF9161FCE0C5600A06E90 /* fe_operations.c in Sources */,
|
||||
A4ADF9001FCE0C5600A06E90 /* poly1305.c in Sources */,
|
||||
A4ADF8F81FCE0C5600A06E90 /* fe_low_mem.c in Sources */,
|
||||
A4ADF86D1FCE0C1C00A06E90 /* wolfio.c in Sources */,
|
||||
A4ADF8D71FCE0C5600A06E90 /* wolfevent.c in Sources */,
|
||||
A4DFEC0D1FD4CAA300A7BB33 /* benchmark.c in Sources */,
|
||||
A4ADF91D1FCE0C5600A06E90 /* cpuid.c in Sources */,
|
||||
A4ADF91A1FCE0C5600A06E90 /* sp.c in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXSourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXVariantGroup section */
|
||||
A4ADF8331FCE0BD300A06E90 /* Main.storyboard */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
A4ADF8341FCE0BD300A06E90 /* Base */,
|
||||
);
|
||||
name = Main.storyboard;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
A4ADF8381FCE0BD300A06E90 /* LaunchScreen.storyboard */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
A4ADF8391FCE0BD300A06E90 /* Base */,
|
||||
);
|
||||
name = LaunchScreen.storyboard;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXVariantGroup section */
|
||||
|
||||
/* Begin XCBuildConfiguration section */
|
||||
A4ADF8541FCE0BD300A06E90 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
CLANG_ANALYZER_NONNULL = YES;
|
||||
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CLANG_ENABLE_OBJC_ARC = YES;
|
||||
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_COMMA = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
||||
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INFINITE_RECURSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
||||
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
|
||||
CLANG_WARN_STRICT_PROTOTYPES = YES;
|
||||
CLANG_WARN_SUSPICIOUS_MOVE = YES;
|
||||
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
CODE_SIGN_IDENTITY = "iPhone Developer";
|
||||
COPY_PHASE_STRIP = NO;
|
||||
DEBUG_INFORMATION_FORMAT = dwarf;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
ENABLE_TESTABILITY = YES;
|
||||
GCC_C_LANGUAGE_STANDARD = gnu11;
|
||||
GCC_DYNAMIC_NO_PIC = NO;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||
"DEBUG=1",
|
||||
"$(inherited)",
|
||||
WOLFSSL_USER_SETTINGS,
|
||||
);
|
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
$SRCROOT/../../,
|
||||
$PROJECT_DIR/../../../,
|
||||
);
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 11.1;
|
||||
MTL_ENABLE_DEBUG_INFO = YES;
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
SDKROOT = iphoneos;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
A4ADF8551FCE0BD300A06E90 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
CLANG_ANALYZER_NONNULL = YES;
|
||||
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CLANG_ENABLE_OBJC_ARC = YES;
|
||||
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_COMMA = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
||||
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INFINITE_RECURSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
||||
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
|
||||
CLANG_WARN_STRICT_PROTOTYPES = YES;
|
||||
CLANG_WARN_SUSPICIOUS_MOVE = YES;
|
||||
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
CODE_SIGN_IDENTITY = "iPhone Developer";
|
||||
COPY_PHASE_STRIP = NO;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
ENABLE_NS_ASSERTIONS = NO;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
GCC_C_LANGUAGE_STANDARD = gnu11;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
GCC_PREPROCESSOR_DEFINITIONS = WOLFSSL_USER_SETTINGS;
|
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
$SRCROOT/../../,
|
||||
$PROJECT_DIR/../../../,
|
||||
);
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 11.1;
|
||||
MTL_ENABLE_DEBUG_INFO = NO;
|
||||
SDKROOT = iphoneos;
|
||||
VALIDATE_PRODUCT = YES;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
A4ADF8571FCE0BD300A06E90 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
DEVELOPMENT_TEAM = 2S2PAGNS5B;
|
||||
INFOPLIST_FILE = wolfBench/Info.plist;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.wolfSSL.wolfBench;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
A4ADF8581FCE0BD300A06E90 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
DEVELOPMENT_TEAM = 2S2PAGNS5B;
|
||||
INFOPLIST_FILE = wolfBench/Info.plist;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.wolfSSL.wolfBench;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
/* End XCBuildConfiguration section */
|
||||
|
||||
/* Begin XCConfigurationList section */
|
||||
A4ADF8251FCE0BD300A06E90 /* Build configuration list for PBXProject "wolfBench" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
A4ADF8541FCE0BD300A06E90 /* Debug */,
|
||||
A4ADF8551FCE0BD300A06E90 /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
};
|
||||
A4ADF8561FCE0BD300A06E90 /* Build configuration list for PBXNativeTarget "wolfBench" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
A4ADF8571FCE0BD300A06E90 /* Debug */,
|
||||
A4ADF8581FCE0BD300A06E90 /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
};
|
||||
/* End XCConfigurationList section */
|
||||
};
|
||||
rootObject = A4ADF8221FCE0BD300A06E90 /* Project object */;
|
||||
}
|
31
IDE/XCODE/Benchmark/wolfBench/AppDelegate.h
Normal file
31
IDE/XCODE/Benchmark/wolfBench/AppDelegate.h
Normal file
@ -0,0 +1,31 @@
|
||||
/* AppDelegate.h
|
||||
*
|
||||
* Copyright (C) 2006-2017 wolfSSL Inc.
|
||||
*
|
||||
* This file is part of wolfSSL. (formerly known as CyaSSL)
|
||||
*
|
||||
* 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-1301, USA
|
||||
*/
|
||||
|
||||
|
||||
#import <UIKit/UIKit.h>
|
||||
|
||||
@interface AppDelegate : UIResponder <UIApplicationDelegate>
|
||||
|
||||
@property (strong, nonatomic) UIWindow *window;
|
||||
|
||||
|
||||
@end
|
||||
|
96
IDE/XCODE/Benchmark/wolfBench/AppDelegate.m
Normal file
96
IDE/XCODE/Benchmark/wolfBench/AppDelegate.m
Normal file
@ -0,0 +1,96 @@
|
||||
/* AppDelegate.m
|
||||
*
|
||||
* Copyright (C) 2006-2017 wolfSSL Inc.
|
||||
*
|
||||
* This file is part of wolfSSL. (formerly known as CyaSSL)
|
||||
*
|
||||
* 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-1301, USA
|
||||
*/
|
||||
|
||||
#import "AppDelegate.h"
|
||||
|
||||
#include <wolfssl/wolfcrypt/settings.h>
|
||||
#include <wolfcrypt/benchmark/benchmark.h>
|
||||
#include <wolfcrypt/test/test.h>
|
||||
|
||||
@interface AppDelegate ()
|
||||
|
||||
@end
|
||||
|
||||
@implementation AppDelegate
|
||||
|
||||
typedef struct func_args {
|
||||
int argc;
|
||||
char** argv;
|
||||
int return_code;
|
||||
} func_args;
|
||||
|
||||
extern int bench_tls(void);
|
||||
|
||||
static func_args args = { 0 } ;
|
||||
|
||||
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
|
||||
// Override point for customization after application launch.
|
||||
|
||||
#if 1
|
||||
printf("\nwolfCrypt Test:\n");
|
||||
wolfcrypt_test(&args);
|
||||
printf("wolfCrypt Test: Return code %d\n", args.return_code);
|
||||
#else
|
||||
(void)args;
|
||||
#endif
|
||||
#if 1
|
||||
printf("\nwolfCrypt Benchmark:\n");
|
||||
benchmark_test(&args);
|
||||
printf("wolfCrypt Benchmark: Return code %d\n", args.return_code);
|
||||
#else
|
||||
(void)args;
|
||||
#endif
|
||||
#if 1
|
||||
bench_tls();
|
||||
#endif
|
||||
|
||||
return YES;
|
||||
}
|
||||
|
||||
|
||||
- (void)applicationWillResignActive:(UIApplication *)application {
|
||||
// Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state.
|
||||
// Use this method to pause ongoing tasks, disable timers, and invalidate graphics rendering callbacks. Games should use this method to pause the game.
|
||||
}
|
||||
|
||||
|
||||
- (void)applicationDidEnterBackground:(UIApplication *)application {
|
||||
// Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later.
|
||||
// If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits.
|
||||
}
|
||||
|
||||
|
||||
- (void)applicationWillEnterForeground:(UIApplication *)application {
|
||||
// Called as part of the transition from the background to the active state; here you can undo many of the changes made on entering the background.
|
||||
}
|
||||
|
||||
|
||||
- (void)applicationDidBecomeActive:(UIApplication *)application {
|
||||
// Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.
|
||||
}
|
||||
|
||||
|
||||
- (void)applicationWillTerminate:(UIApplication *)application {
|
||||
// Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.
|
||||
}
|
||||
|
||||
|
||||
@end
|
@ -0,0 +1,93 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "iphone",
|
||||
"size" : "20x20",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"idiom" : "iphone",
|
||||
"size" : "20x20",
|
||||
"scale" : "3x"
|
||||
},
|
||||
{
|
||||
"idiom" : "iphone",
|
||||
"size" : "29x29",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"idiom" : "iphone",
|
||||
"size" : "29x29",
|
||||
"scale" : "3x"
|
||||
},
|
||||
{
|
||||
"idiom" : "iphone",
|
||||
"size" : "40x40",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"idiom" : "iphone",
|
||||
"size" : "40x40",
|
||||
"scale" : "3x"
|
||||
},
|
||||
{
|
||||
"idiom" : "iphone",
|
||||
"size" : "60x60",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"idiom" : "iphone",
|
||||
"size" : "60x60",
|
||||
"scale" : "3x"
|
||||
},
|
||||
{
|
||||
"idiom" : "ipad",
|
||||
"size" : "20x20",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"idiom" : "ipad",
|
||||
"size" : "20x20",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"idiom" : "ipad",
|
||||
"size" : "29x29",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"idiom" : "ipad",
|
||||
"size" : "29x29",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"idiom" : "ipad",
|
||||
"size" : "40x40",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"idiom" : "ipad",
|
||||
"size" : "40x40",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"idiom" : "ipad",
|
||||
"size" : "76x76",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"idiom" : "ipad",
|
||||
"size" : "76x76",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"idiom" : "ipad",
|
||||
"size" : "83.5x83.5",
|
||||
"scale" : "2x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"version" : 1,
|
||||
"author" : "xcode"
|
||||
}
|
||||
}
|
@ -0,0 +1,25 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13122.16" systemVersion="17A277" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="01J-lp-oVM">
|
||||
<dependencies>
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13104.12"/>
|
||||
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
|
||||
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
|
||||
</dependencies>
|
||||
<scenes>
|
||||
<!--View Controller-->
|
||||
<scene sceneID="EHf-IW-A2E">
|
||||
<objects>
|
||||
<viewController id="01J-lp-oVM" sceneMemberID="viewController">
|
||||
<view key="view" contentMode="scaleToFill" id="Ze5-6b-2t3">
|
||||
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||
<viewLayoutGuide key="safeArea" id="6Tk-OE-BBY"/>
|
||||
</view>
|
||||
</viewController>
|
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="iYj-Kq-Ea1" userLabel="First Responder" sceneMemberID="firstResponder"/>
|
||||
</objects>
|
||||
<point key="canvasLocation" x="53" y="375"/>
|
||||
</scene>
|
||||
</scenes>
|
||||
</document>
|
24
IDE/XCODE/Benchmark/wolfBench/Base.lproj/Main.storyboard
Normal file
24
IDE/XCODE/Benchmark/wolfBench/Base.lproj/Main.storyboard
Normal file
@ -0,0 +1,24 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13122.16" systemVersion="17A277" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="BYZ-38-t0r">
|
||||
<dependencies>
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13104.12"/>
|
||||
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
|
||||
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
|
||||
</dependencies>
|
||||
<scenes>
|
||||
<!--View Controller-->
|
||||
<scene sceneID="tne-QT-ifu">
|
||||
<objects>
|
||||
<viewController id="BYZ-38-t0r" customClass="ViewController" customModuleProvider="" sceneMemberID="viewController">
|
||||
<view key="view" contentMode="scaleToFill" id="8bC-Xf-vdC">
|
||||
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||
<viewLayoutGuide key="safeArea" id="6Tk-OE-BBY"/>
|
||||
</view>
|
||||
</viewController>
|
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="dkx-z0-nzr" sceneMemberID="firstResponder"/>
|
||||
</objects>
|
||||
</scene>
|
||||
</scenes>
|
||||
</document>
|
45
IDE/XCODE/Benchmark/wolfBench/Info.plist
Normal file
45
IDE/XCODE/Benchmark/wolfBench/Info.plist
Normal file
@ -0,0 +1,45 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>$(DEVELOPMENT_LANGUAGE)</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>$(EXECUTABLE_NAME)</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>$(PRODUCT_NAME)</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1</string>
|
||||
<key>LSRequiresIPhoneOS</key>
|
||||
<true/>
|
||||
<key>UILaunchStoryboardName</key>
|
||||
<string>LaunchScreen</string>
|
||||
<key>UIMainStoryboardFile</key>
|
||||
<string>Main</string>
|
||||
<key>UIRequiredDeviceCapabilities</key>
|
||||
<array>
|
||||
<string>armv7</string>
|
||||
</array>
|
||||
<key>UISupportedInterfaceOrientations</key>
|
||||
<array>
|
||||
<string>UIInterfaceOrientationPortrait</string>
|
||||
<string>UIInterfaceOrientationLandscapeLeft</string>
|
||||
<string>UIInterfaceOrientationLandscapeRight</string>
|
||||
</array>
|
||||
<key>UISupportedInterfaceOrientations~ipad</key>
|
||||
<array>
|
||||
<string>UIInterfaceOrientationPortrait</string>
|
||||
<string>UIInterfaceOrientationPortraitUpsideDown</string>
|
||||
<string>UIInterfaceOrientationLandscapeLeft</string>
|
||||
<string>UIInterfaceOrientationLandscapeRight</string>
|
||||
</array>
|
||||
</dict>
|
||||
</plist>
|
28
IDE/XCODE/Benchmark/wolfBench/ViewController.h
Normal file
28
IDE/XCODE/Benchmark/wolfBench/ViewController.h
Normal file
@ -0,0 +1,28 @@
|
||||
/* ViewController.h
|
||||
*
|
||||
* Copyright (C) 2006-2017 wolfSSL Inc.
|
||||
*
|
||||
* This file is part of wolfSSL. (formerly known as CyaSSL)
|
||||
*
|
||||
* 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-1301, USA
|
||||
*/
|
||||
|
||||
#import <UIKit/UIKit.h>
|
||||
|
||||
@interface ViewController : UIViewController
|
||||
|
||||
|
||||
@end
|
||||
|
43
IDE/XCODE/Benchmark/wolfBench/ViewController.m
Normal file
43
IDE/XCODE/Benchmark/wolfBench/ViewController.m
Normal file
@ -0,0 +1,43 @@
|
||||
/* ViewController.m
|
||||
*
|
||||
* Copyright (C) 2006-2017 wolfSSL Inc.
|
||||
*
|
||||
* This file is part of wolfSSL. (formerly known as CyaSSL)
|
||||
*
|
||||
* 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-1301, USA
|
||||
*/
|
||||
|
||||
|
||||
#import "ViewController.h"
|
||||
|
||||
@interface ViewController ()
|
||||
|
||||
@end
|
||||
|
||||
@implementation ViewController
|
||||
|
||||
- (void)viewDidLoad {
|
||||
[super viewDidLoad];
|
||||
// Do any additional setup after loading the view, typically from a nib.
|
||||
}
|
||||
|
||||
|
||||
- (void)didReceiveMemoryWarning {
|
||||
[super didReceiveMemoryWarning];
|
||||
// Dispose of any resources that can be recreated.
|
||||
}
|
||||
|
||||
|
||||
@end
|
29
IDE/XCODE/Benchmark/wolfBench/main.m
Normal file
29
IDE/XCODE/Benchmark/wolfBench/main.m
Normal file
@ -0,0 +1,29 @@
|
||||
/* main.m
|
||||
*
|
||||
* Copyright (C) 2006-2017 wolfSSL Inc.
|
||||
*
|
||||
* This file is part of wolfSSL. (formerly known as CyaSSL)
|
||||
*
|
||||
* 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-1301, USA
|
||||
*/
|
||||
|
||||
#import <UIKit/UIKit.h>
|
||||
#import "AppDelegate.h"
|
||||
|
||||
int main(int argc, char * argv[]) {
|
||||
@autoreleasepool {
|
||||
return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
|
||||
}
|
||||
}
|
12
IDE/XCODE/include.am
Normal file
12
IDE/XCODE/include.am
Normal file
@ -0,0 +1,12 @@
|
||||
# vim:ft=automake
|
||||
# included from Top Level Makefile.am
|
||||
# All paths should be given relative to the root
|
||||
|
||||
EXTRA_DIST+= IDE/XCODE/README.md
|
||||
EXTRA_DIST+= IDE/XCODE/wolfssl-FIPS.xcodeproj/project.pbxproj
|
||||
EXTRA_DIST+= IDE/XCODE/wolfssl.xcodeproj/project.pbxproj
|
||||
EXTRA_DIST+= IDE/XCODE/wolfssl.xcworkspace
|
||||
EXTRA_DIST+= IDE/XCODE/wolfssl_testsuite.xcodeproj
|
||||
EXTRA_DIST+= IDE/XCODE/user_settings.h
|
||||
|
||||
include IDE/XCODE/Benchmark/include.am
|
77
IDE/XCODE/user_settings.h
Normal file
77
IDE/XCODE/user_settings.h
Normal file
@ -0,0 +1,77 @@
|
||||
/* Configuration */
|
||||
#define IPHONE /* Needed for Xcode */
|
||||
#define HAVE_HASHDRBG
|
||||
#define HAVE_AESGCM
|
||||
#define WOLFSSL_SHA512
|
||||
#define WOLFSSL_SHA384
|
||||
|
||||
#ifdef HAVE_FIPS
|
||||
#define NO_MD4
|
||||
#define NO_HC128
|
||||
#define NO_RABBIT
|
||||
#define NO_DSA
|
||||
#define NO_PWDBASED
|
||||
#else
|
||||
/* disable "main" entry */
|
||||
#define NO_MAIN_DRIVER
|
||||
|
||||
/* fast math */
|
||||
#define USE_FAST_MATH
|
||||
#define HAVE_ECC
|
||||
|
||||
/* ECC speedups */
|
||||
#define ECC_SHAMIR
|
||||
#define TFM_ECC256
|
||||
|
||||
/* timing resistance */
|
||||
#if 0
|
||||
#define WC_RSA_BLINDING
|
||||
#define TFM_TIMING_RESISTANT
|
||||
#define ECC_TIMING_RESISTANT
|
||||
#else
|
||||
#define WC_NO_HARDEN
|
||||
#endif
|
||||
|
||||
/* single precision math */
|
||||
#if 1
|
||||
#define WOLFSSL_HAVE_SP_RSA
|
||||
#define WOLFSSL_HAVE_SP_DH
|
||||
#define WOLFSSL_HAVE_SP_ECC
|
||||
#endif
|
||||
|
||||
/* ARMv8 - iPhone 8/8Plus and iPhone X */
|
||||
#ifdef __ARM_FEATURE_CRYPTO
|
||||
#define WOLFSSL_ARMASM
|
||||
#endif
|
||||
|
||||
/* newer algorithms */
|
||||
#define WOLFSSL_SHA3
|
||||
|
||||
#define HAVE_POLY1305
|
||||
#define HAVE_CHACHA
|
||||
|
||||
#define HAVE_CURVE25519
|
||||
#define HAVE_ED25519
|
||||
|
||||
/* TLS extensions */
|
||||
#define HAVE_ONE_TIME_AUTH
|
||||
#define HAVE_TLS_EXTENSIONS
|
||||
#define HAVE_SUPPORTED_CURVES
|
||||
#define HAVE_EXTENDED_MASTER
|
||||
|
||||
/* off by default */
|
||||
#define NO_RC4
|
||||
#define NO_MD4
|
||||
#define NO_HC128
|
||||
#define NO_RABBIT
|
||||
#define NO_DSA
|
||||
#define NO_PSK
|
||||
#define NO_PWDBASED
|
||||
|
||||
/* test certificate buffers */
|
||||
#define USE_CERT_BUFFERS_2048
|
||||
#define USE_CERT_BUFFERS_256
|
||||
|
||||
//#define DEBUG_WOLFSSL
|
||||
|
||||
#endif
|
@ -9,7 +9,7 @@
|
||||
/* Begin PBXBuildFile section */
|
||||
30B060541C6DDB2B00D46008 /* crl.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646011A89928E0062516A /* crl.c */; };
|
||||
30B060551C6DDB2B00D46008 /* internal.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646021A89928E0062516A /* internal.c */; };
|
||||
30B060561C6DDB2B00D46008 /* io.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646031A89928E0062516A /* io.c */; };
|
||||
30B060561C6DDB2B00D46008 /* wolfio.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646031A89928E0062516A /* wolfio.c */; };
|
||||
30B060571C6DDB2B00D46008 /* keys.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646041A89928E0062516A /* keys.c */; };
|
||||
30B060581C6DDB2B00D46008 /* ocsp.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646051A89928E0062516A /* ocsp.c */; };
|
||||
30B060591C6DDB2B00D46008 /* sniffer.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646061A89928E0062516A /* sniffer.c */; };
|
||||
@ -158,7 +158,7 @@
|
||||
30B060EC1C6DDB9800D46008 /* wc_port.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646C01A8993F50062516A /* wc_port.h */; };
|
||||
521646091A89928E0062516A /* crl.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646011A89928E0062516A /* crl.c */; };
|
||||
5216460A1A89928E0062516A /* internal.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646021A89928E0062516A /* internal.c */; };
|
||||
5216460B1A89928E0062516A /* io.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646031A89928E0062516A /* io.c */; };
|
||||
5216460B1A89928E0062516A /* wolfio.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646031A89928E0062516A /* wolfio.c */; };
|
||||
5216460C1A89928E0062516A /* keys.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646041A89928E0062516A /* keys.c */; };
|
||||
5216460D1A89928E0062516A /* ocsp.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646051A89928E0062516A /* ocsp.c */; };
|
||||
5216460E1A89928E0062516A /* sniffer.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646061A89928E0062516A /* sniffer.c */; };
|
||||
@ -343,7 +343,7 @@
|
||||
A4F318741BC58B1700FDF2BB /* arc4.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646121A8992CC0062516A /* arc4.c */; };
|
||||
A4F318751BC58B1700FDF2BB /* integer.c in Sources */ = {isa = PBXBuildFile; fileRef = 5216461F1A8992CC0062516A /* integer.c */; };
|
||||
A4F318761BC58B1700FDF2BB /* internal.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646021A89928E0062516A /* internal.c */; };
|
||||
A4F318771BC58B1700FDF2BB /* io.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646031A89928E0062516A /* io.c */; };
|
||||
A4F318771BC58B1700FDF2BB /* wolfio.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646031A89928E0062516A /* wolfio.c */; };
|
||||
A4F318781BC58B1700FDF2BB /* tfm.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646301A8992CC0062516A /* tfm.c */; };
|
||||
A4F318791BC58B1700FDF2BB /* crl.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646011A89928E0062516A /* crl.c */; };
|
||||
A4F3187A1BC58B1700FDF2BB /* keys.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646041A89928E0062516A /* keys.c */; };
|
||||
@ -892,7 +892,7 @@
|
||||
30B0604B1C6DDAEA00D46008 /* libwolfssl_tvos.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libwolfssl_tvos.a; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
521646011A89928E0062516A /* crl.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = crl.c; path = ../../src/crl.c; sourceTree = "<group>"; };
|
||||
521646021A89928E0062516A /* internal.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = internal.c; path = ../../src/internal.c; sourceTree = "<group>"; };
|
||||
521646031A89928E0062516A /* io.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = io.c; path = ../../src/io.c; sourceTree = "<group>"; };
|
||||
521646031A89928E0062516A /* wolfio.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = wolfio.c; path = ../../src/wolfio.c; sourceTree = "<group>"; };
|
||||
521646041A89928E0062516A /* keys.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = keys.c; path = ../../src/keys.c; sourceTree = "<group>"; };
|
||||
521646051A89928E0062516A /* ocsp.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = ocsp.c; path = ../../src/ocsp.c; sourceTree = "<group>"; };
|
||||
521646061A89928E0062516A /* sniffer.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = sniffer.c; path = ../../src/sniffer.c; sourceTree = "<group>"; };
|
||||
@ -1273,7 +1273,7 @@
|
||||
children = (
|
||||
521646011A89928E0062516A /* crl.c */,
|
||||
521646021A89928E0062516A /* internal.c */,
|
||||
521646031A89928E0062516A /* io.c */,
|
||||
521646031A89928E0062516A /* wolfio.c */,
|
||||
521646041A89928E0062516A /* keys.c */,
|
||||
521646051A89928E0062516A /* ocsp.c */,
|
||||
521646061A89928E0062516A /* sniffer.c */,
|
||||
@ -1405,7 +1405,7 @@
|
||||
files = (
|
||||
30B060541C6DDB2B00D46008 /* crl.c in Sources */,
|
||||
30B060551C6DDB2B00D46008 /* internal.c in Sources */,
|
||||
30B060561C6DDB2B00D46008 /* io.c in Sources */,
|
||||
30B060561C6DDB2B00D46008 /* wolfio.c in Sources */,
|
||||
30B060571C6DDB2B00D46008 /* keys.c in Sources */,
|
||||
30B060581C6DDB2B00D46008 /* ocsp.c in Sources */,
|
||||
30B060591C6DDB2B00D46008 /* sniffer.c in Sources */,
|
||||
@ -1490,7 +1490,7 @@
|
||||
521646331A8992CC0062516A /* arc4.c in Sources */,
|
||||
521646401A8992CC0062516A /* integer.c in Sources */,
|
||||
5216460A1A89928E0062516A /* internal.c in Sources */,
|
||||
5216460B1A89928E0062516A /* io.c in Sources */,
|
||||
5216460B1A89928E0062516A /* wolfio.c in Sources */,
|
||||
521646511A8992CC0062516A /* tfm.c in Sources */,
|
||||
521646091A89928E0062516A /* crl.c in Sources */,
|
||||
5216460C1A89928E0062516A /* keys.c in Sources */,
|
||||
@ -1539,7 +1539,7 @@
|
||||
A4F318741BC58B1700FDF2BB /* arc4.c in Sources */,
|
||||
A4F318751BC58B1700FDF2BB /* integer.c in Sources */,
|
||||
A4F318761BC58B1700FDF2BB /* internal.c in Sources */,
|
||||
A4F318771BC58B1700FDF2BB /* io.c in Sources */,
|
||||
A4F318771BC58B1700FDF2BB /* wolfio.c in Sources */,
|
||||
A4F318781BC58B1700FDF2BB /* tfm.c in Sources */,
|
||||
A4F318791BC58B1700FDF2BB /* crl.c in Sources */,
|
||||
A4F3187A1BC58B1700FDF2BB /* keys.c in Sources */,
|
@ -7,6 +7,9 @@
|
||||
<FileRef
|
||||
location = "group:wolfssl_testsuite.xcodeproj">
|
||||
</FileRef>
|
||||
<FileRef
|
||||
location = "group:/Users/davidgarske/GitHub/wolfssl/IDE/XCODE/wolfcrypt_testbench.xcodeproj">
|
||||
</FileRef>
|
||||
<FileRef
|
||||
location = "group:wolfssl.xcodeproj">
|
||||
</FileRef>
|
@ -1,10 +0,0 @@
|
||||
# vim:ft=automake
|
||||
# included from Top Level Makefile.am
|
||||
# All paths should be given relative to the root
|
||||
|
||||
EXTRA_DIST+= IDE/iOS/README.md
|
||||
EXTRA_DIST+= IDE/iOS/wolfssl-FIPS.xcodeproj/project.pbxproj
|
||||
EXTRA_DIST+= IDE/iOS/wolfssl.xcodeproj/project.pbxproj
|
||||
EXTRA_DIST+= IDE/iOS/wolfssl.xcworkspace
|
||||
EXTRA_DIST+= IDE/iOS/wolfssl_testsuite.xcodeproj
|
||||
EXTRA_DIST+= IDE/iOS/user_settings.h
|
@ -1,20 +0,0 @@
|
||||
/* Configuration */
|
||||
#define IPHONE /* Needed for Xcode */
|
||||
#define HAVE_HASHDRBG
|
||||
#define HAVE_AESGCM
|
||||
#define WOLFSSL_SHA512
|
||||
#define WOLFSSL_SHA384
|
||||
|
||||
#ifdef HAVE_FIPS
|
||||
#define NO_MD4
|
||||
#define NO_HC128
|
||||
#define NO_RABBIT
|
||||
#define NO_DSA
|
||||
#define NO_PWDBASED
|
||||
#else
|
||||
#define WC_RSA_BLINDING
|
||||
#define USE_FAST_MATH
|
||||
#define TFM_TIMING_RESISTANT
|
||||
#define HAVE_ECC
|
||||
#define ECC_TIMING_RESISTANT
|
||||
#endif
|
@ -2,7 +2,7 @@
|
||||
# included from Top Level Makefile.am
|
||||
# All paths should be given relative to the root
|
||||
|
||||
include IDE/iOS/include.am
|
||||
include IDE/XCODE/include.am
|
||||
include IDE/WIN/include.am
|
||||
include IDE/WIN-SGX/include.am
|
||||
include IDE/LINUX-SGX/include.am
|
||||
|
4
examples/benchmark/include.am
Normal file
4
examples/benchmark/include.am
Normal file
@ -0,0 +1,4 @@
|
||||
# vim:ft=automake
|
||||
# All paths should be given relative to the root
|
||||
|
||||
EXTRA_DIST+= examples/benchmark/tls-bench.c
|
716
examples/benchmark/tls-bench.c
Normal file
716
examples/benchmark/tls-bench.c
Normal file
@ -0,0 +1,716 @@
|
||||
/* tls-bench.c
|
||||
*
|
||||
* Copyright (C) 2006-2017 wolfSSL Inc.
|
||||
*
|
||||
* This file is part of wolfSSL. (formerly known as CyaSSL)
|
||||
*
|
||||
* 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-1301, USA
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
Example gcc build statement
|
||||
gcc -lwolfssl -lpthread -o tls-bench tls-bench.c
|
||||
./tls-bench
|
||||
|
||||
Or
|
||||
|
||||
extern int bench_tls(void);
|
||||
bench_tls();
|
||||
*/
|
||||
|
||||
|
||||
#ifndef WOLFSSL_USER_SETTINGS
|
||||
#include <wolfssl/options.h>
|
||||
#endif
|
||||
#include <wolfssl/wolfcrypt/settings.h>
|
||||
#include <wolfssl/ssl.h>
|
||||
|
||||
/* force certificate test buffers to be included via headers */
|
||||
#undef USE_CERT_BUFFERS_2048
|
||||
#define USE_CERT_BUFFERS_2048
|
||||
#undef USE_CERT_BUFFERS_256
|
||||
#define USE_CERT_BUFFERS_256
|
||||
#include <wolfssl/certs_test.h>
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <pthread.h>
|
||||
#include <unistd.h>
|
||||
#include <sys/time.h>
|
||||
|
||||
/* configuration parameters */
|
||||
#define THREAD_COUNT 2
|
||||
#define RUNTIME_SEC 2
|
||||
#define MEM_BUFFER_SZ (1024*5)
|
||||
#define MIN_DHKEY_BITS 1024
|
||||
|
||||
/* default output is tab delimited format. Uncomment these to show more */
|
||||
//#define SHOW_PEER_INFO
|
||||
//#define SHOW_VERBOSE_OUTPUT
|
||||
|
||||
static const char* kTestStr =
|
||||
"Biodiesel cupidatat marfa, cliche aute put a bird on it incididunt elit\n"
|
||||
"polaroid. Sunt tattooed bespoke reprehenderit. Sint twee organic id\n"
|
||||
"marfa. Commodo veniam ad esse gastropub. 3 wolf moon sartorial vero,\n"
|
||||
"plaid delectus biodiesel squid +1 vice. Post-ironic keffiyeh leggings\n"
|
||||
"selfies cray fap hoodie, forage anim. Carles cupidatat shoreditch, VHS\n"
|
||||
"small batch meggings kogi dolore food truck bespoke gastropub.\n"
|
||||
"\n"
|
||||
"Terry richardson adipisicing actually typewriter tumblr, twee whatever\n"
|
||||
"four loko you probably haven't heard of them high life. Messenger bag\n"
|
||||
"whatever tattooed deep v mlkshk. Brooklyn pinterest assumenda chillwave\n"
|
||||
"et, banksy ullamco messenger bag umami pariatur direct trade forage.\n"
|
||||
"Typewriter culpa try-hard, pariatur sint brooklyn meggings. Gentrify\n"
|
||||
"food truck next level, tousled irony non semiotics PBR ethical anim cred\n"
|
||||
"readymade. Mumblecore brunch lomo odd future, portland organic terry\n"
|
||||
"richardson elit leggings adipisicing ennui raw denim banjo hella. Godard\n"
|
||||
"mixtape polaroid, pork belly readymade organic cray typewriter helvetica\n"
|
||||
"four loko whatever street art yr farm-to-table.\n"
|
||||
"\n"
|
||||
"Vinyl keytar vice tofu. Locavore you probably haven't heard of them pug\n"
|
||||
"pickled, hella tonx labore truffaut DIY mlkshk elit cosby sweater sint\n"
|
||||
"et mumblecore. Elit swag semiotics, reprehenderit DIY sartorial nisi ugh\n"
|
||||
"nesciunt pug pork belly wayfarers selfies delectus. Ethical hoodie\n"
|
||||
"seitan fingerstache kale chips. Terry richardson artisan williamsburg,\n"
|
||||
"eiusmod fanny pack irony tonx ennui lo-fi incididunt tofu YOLO\n"
|
||||
"readymade. 8-bit sed ethnic beard officia. Pour-over iphone DIY butcher,\n"
|
||||
"ethnic art party qui letterpress nisi proident jean shorts mlkshk\n"
|
||||
"locavore.\n"
|
||||
"\n"
|
||||
"Narwhal flexitarian letterpress, do gluten-free voluptate next level\n"
|
||||
"banh mi tonx incididunt carles DIY. Odd future nulla 8-bit beard ut\n"
|
||||
"cillum pickled velit, YOLO officia you probably haven't heard of them\n"
|
||||
"trust fund gastropub. Nisi adipisicing tattooed, Austin mlkshk 90's\n"
|
||||
"small batch american apparel. Put a bird on it cosby sweater before they\n"
|
||||
"sold out pork belly kogi hella. Street art mollit sustainable polaroid,\n"
|
||||
"DIY ethnic ea pug beard dreamcatcher cosby sweater magna scenester nisi.\n"
|
||||
"Sed pork belly skateboard mollit, labore proident eiusmod. Sriracha\n"
|
||||
"excepteur cosby sweater, anim deserunt laborum eu aliquip ethical et\n"
|
||||
"neutra PBR selvage.\n"
|
||||
"\n"
|
||||
"Raw denim pork belly truffaut, irony plaid sustainable put a bird on it\n"
|
||||
"next level jean shorts exercitation. Hashtag keytar whatever, nihil\n"
|
||||
"authentic aliquip disrupt laborum. Tattooed selfies deserunt trust fund\n"
|
||||
"wayfarers. 3 wolf moon synth church-key sartorial, gastropub leggings\n"
|
||||
"tattooed. Labore high life commodo, meggings raw denim fingerstache pug\n"
|
||||
"trust fund leggings seitan forage. Nostrud ullamco duis, reprehenderit\n"
|
||||
"incididunt flannel sustainable helvetica pork belly pug banksy you\n"
|
||||
"probably haven't heard of them nesciunt farm-to-table. Disrupt nostrud\n"
|
||||
"mollit magna, sriracha sartorial helvetica.\n"
|
||||
"\n"
|
||||
"Nulla kogi reprehenderit, skateboard sustainable duis adipisicing viral\n"
|
||||
"ad fanny pack salvia. Fanny pack trust fund you probably haven't heard\n"
|
||||
"of them YOLO vice nihil. Keffiyeh cray lo-fi pinterest cardigan aliqua,\n"
|
||||
"reprehenderit aute. Culpa tousled williamsburg, marfa lomo actually anim\n"
|
||||
"skateboard. Iphone aliqua ugh, semiotics pariatur vero readymade\n"
|
||||
"organic. Marfa squid nulla, in laborum disrupt laboris irure gastropub.\n"
|
||||
"Veniam sunt food truck leggings, sint vinyl fap.\n"
|
||||
"\n"
|
||||
"Hella dolore pork belly, truffaut carles you probably haven't heard of\n"
|
||||
"them PBR helvetica in sapiente. Fashion axe ugh bushwick american\n"
|
||||
"apparel. Fingerstache sed iphone, jean shorts blue bottle nisi bushwick\n"
|
||||
"flexitarian officia veniam plaid bespoke fap YOLO lo-fi. Blog\n"
|
||||
"letterpress mumblecore, food truck id cray brooklyn cillum ad sed.\n"
|
||||
"Assumenda chambray wayfarers vinyl mixtape sustainable. VHS vinyl\n"
|
||||
"delectus, culpa williamsburg polaroid cliche swag church-key synth kogi\n"
|
||||
"magna pop-up literally. Swag thundercats ennui shoreditch vegan\n"
|
||||
"pitchfork neutra truffaut etsy, sed single-origin coffee craft beer.\n"
|
||||
"\n"
|
||||
"Odio letterpress brooklyn elit. Nulla single-origin coffee in occaecat\n"
|
||||
"meggings. Irony meggings 8-bit, chillwave lo-fi adipisicing cred\n"
|
||||
"dreamcatcher veniam. Put a bird on it irony umami, trust fund bushwick\n"
|
||||
"locavore kale chips. Sriracha swag thundercats, chillwave disrupt\n"
|
||||
"tousled beard mollit mustache leggings portland next level. Nihil esse\n"
|
||||
"est, skateboard art party etsy thundercats sed dreamcatcher ut iphone\n"
|
||||
"swag consectetur et. Irure skateboard banjo, nulla deserunt messenger\n"
|
||||
"bag dolor terry richardson sapiente.\n";
|
||||
|
||||
|
||||
#ifndef NO_DH
|
||||
/* dh1024 p */
|
||||
static unsigned char p[] =
|
||||
{
|
||||
0xE6, 0x96, 0x9D, 0x3D, 0x49, 0x5B, 0xE3, 0x2C, 0x7C, 0xF1, 0x80, 0xC3,
|
||||
0xBD, 0xD4, 0x79, 0x8E, 0x91, 0xB7, 0x81, 0x82, 0x51, 0xBB, 0x05, 0x5E,
|
||||
0x2A, 0x20, 0x64, 0x90, 0x4A, 0x79, 0xA7, 0x70, 0xFA, 0x15, 0xA2, 0x59,
|
||||
0xCB, 0xD5, 0x23, 0xA6, 0xA6, 0xEF, 0x09, 0xC4, 0x30, 0x48, 0xD5, 0xA2,
|
||||
0x2F, 0x97, 0x1F, 0x3C, 0x20, 0x12, 0x9B, 0x48, 0x00, 0x0E, 0x6E, 0xDD,
|
||||
0x06, 0x1C, 0xBC, 0x05, 0x3E, 0x37, 0x1D, 0x79, 0x4E, 0x53, 0x27, 0xDF,
|
||||
0x61, 0x1E, 0xBB, 0xBE, 0x1B, 0xAC, 0x9B, 0x5C, 0x60, 0x44, 0xCF, 0x02,
|
||||
0x3D, 0x76, 0xE0, 0x5E, 0xEA, 0x9B, 0xAD, 0x99, 0x1B, 0x13, 0xA6, 0x3C,
|
||||
0x97, 0x4E, 0x9E, 0xF1, 0x83, 0x9E, 0xB5, 0xDB, 0x12, 0x51, 0x36, 0xF7,
|
||||
0x26, 0x2E, 0x56, 0xA8, 0x87, 0x15, 0x38, 0xDF, 0xD8, 0x23, 0xC6, 0x50,
|
||||
0x50, 0x85, 0xE2, 0x1F, 0x0D, 0xD5, 0xC8, 0x6B,
|
||||
};
|
||||
|
||||
/* dh1024 g */
|
||||
static unsigned char g[] =
|
||||
{
|
||||
0x02,
|
||||
};
|
||||
#endif
|
||||
|
||||
typedef struct {
|
||||
unsigned char buf[MEM_BUFFER_SZ];
|
||||
int write_bytes;
|
||||
int write_idx;
|
||||
int read_bytes;
|
||||
int read_idx;
|
||||
|
||||
pthread_t tid;
|
||||
pthread_mutex_t mutex;
|
||||
pthread_cond_t cond;
|
||||
int done;
|
||||
} memBuf_t;
|
||||
|
||||
typedef struct {
|
||||
double connTime;
|
||||
double rxTime;
|
||||
double txTime;
|
||||
int connCount;
|
||||
int rxTotal;
|
||||
int txTotal;
|
||||
} stats_t;
|
||||
|
||||
typedef struct {
|
||||
const char* cipher;
|
||||
|
||||
/* client messages to server in memory */
|
||||
memBuf_t to_server;
|
||||
|
||||
/* server messages to client in memory */
|
||||
memBuf_t to_client;
|
||||
|
||||
/* server */
|
||||
stats_t server_stats;
|
||||
|
||||
/* client */
|
||||
stats_t client_stats;
|
||||
|
||||
int shutdown;
|
||||
} info_t;
|
||||
|
||||
#ifdef SHOW_PEER_INFO
|
||||
static void showPeer(WOLFSSL* ssl)
|
||||
{
|
||||
WOLFSSL_CIPHER* cipher;
|
||||
#ifdef HAVE_ECC
|
||||
const char *name;
|
||||
#endif
|
||||
#ifndef NO_DH
|
||||
int bits;
|
||||
#endif
|
||||
|
||||
printf("SSL version is %s\n", wolfSSL_get_version(ssl));
|
||||
|
||||
cipher = wolfSSL_get_current_cipher(ssl);
|
||||
printf("SSL cipher suite is %s\n", wolfSSL_CIPHER_get_name(cipher));
|
||||
|
||||
#ifdef HAVE_ECC
|
||||
if ((name = wolfSSL_get_curve_name(ssl)) != NULL)
|
||||
printf("SSL curve name is %s\n", name);
|
||||
#endif
|
||||
#ifndef NO_DH
|
||||
if ((bits = wolfSSL_GetDhKey_Sz(ssl)) > 0)
|
||||
printf("SSL DH size is %d bits\n", bits);
|
||||
#endif
|
||||
if (wolfSSL_session_reused(ssl))
|
||||
printf("SSL reused session\n");
|
||||
#ifdef WOLFSSL_ALT_CERT_CHAINS
|
||||
if (wolfSSL_is_peer_alt_cert_chain(ssl))
|
||||
printf("Alternate cert chain used\n");
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
|
||||
/* server send callback */
|
||||
static int ServerSend(WOLFSSL* ssl, char* buf, int sz, void* ctx)
|
||||
{
|
||||
info_t* info = (info_t*)ctx;
|
||||
|
||||
pthread_mutex_lock(&info->to_client.mutex);
|
||||
|
||||
/* check for overflow */
|
||||
if (info->to_client.write_idx + sz > MEM_BUFFER_SZ) {
|
||||
pthread_mutex_unlock(&info->to_client.mutex);
|
||||
return -1;
|
||||
}
|
||||
|
||||
memcpy(&info->to_client.buf[info->to_client.write_idx], buf, sz);
|
||||
info->to_client.write_idx += sz;
|
||||
info->to_client.write_bytes += sz;
|
||||
|
||||
pthread_cond_signal(&info->to_client.cond);
|
||||
pthread_mutex_unlock(&info->to_client.mutex);
|
||||
|
||||
return sz;
|
||||
}
|
||||
|
||||
|
||||
/* server recv callback */
|
||||
static int ServerRecv(WOLFSSL* ssl, char* buf, int sz, void* ctx)
|
||||
{
|
||||
info_t* info = (info_t*)ctx;
|
||||
|
||||
pthread_mutex_lock(&info->to_server.mutex);
|
||||
|
||||
while (info->to_server.write_idx - info->to_server.read_idx < sz && !info->to_client.done)
|
||||
pthread_cond_wait(&info->to_server.cond, &info->to_server.mutex);
|
||||
|
||||
memcpy(buf, &info->to_server.buf[info->to_server.read_idx], sz);
|
||||
info->to_server.read_idx += sz;
|
||||
info->to_server.read_bytes += sz;
|
||||
|
||||
/* if the rx has caught up with pending then reset buffer positions */
|
||||
if (info->to_server.read_bytes == info->to_server.write_bytes) {
|
||||
info->to_server.read_bytes = info->to_server.read_idx = 0;
|
||||
info->to_server.write_bytes = info->to_server.write_idx = 0;
|
||||
}
|
||||
|
||||
pthread_mutex_unlock(&info->to_server.mutex);
|
||||
|
||||
if (info->to_client.done != 0)
|
||||
return -1;
|
||||
|
||||
return sz;
|
||||
}
|
||||
|
||||
|
||||
/* client send callback */
|
||||
static int ClientSend(WOLFSSL* ssl, char* buf, int sz, void* ctx)
|
||||
{
|
||||
info_t* info = (info_t*)ctx;
|
||||
|
||||
pthread_mutex_lock(&info->to_server.mutex);
|
||||
|
||||
/* check for overflow */
|
||||
if (info->to_client.write_idx + sz > MEM_BUFFER_SZ) {
|
||||
pthread_mutex_unlock(&info->to_server.mutex);
|
||||
return -1;
|
||||
}
|
||||
|
||||
memcpy(&info->to_server.buf[info->to_server.write_idx], buf, sz);
|
||||
info->to_server.write_idx += sz;
|
||||
info->to_server.write_bytes += sz;
|
||||
|
||||
pthread_cond_signal(&info->to_server.cond);
|
||||
pthread_mutex_unlock(&info->to_server.mutex);
|
||||
|
||||
return sz;
|
||||
}
|
||||
|
||||
|
||||
/* client recv callback */
|
||||
static int ClientRecv(WOLFSSL* ssl, char* buf, int sz, void* ctx)
|
||||
{
|
||||
info_t* info = (info_t*)ctx;
|
||||
|
||||
pthread_mutex_lock(&info->to_client.mutex);
|
||||
|
||||
while (info->to_client.write_idx - info->to_client.read_idx < sz)
|
||||
pthread_cond_wait(&info->to_client.cond, &info->to_client.mutex);
|
||||
|
||||
memcpy(buf, &info->to_client.buf[info->to_client.read_idx], sz);
|
||||
info->to_client.read_idx += sz;
|
||||
info->to_client.read_bytes += sz;
|
||||
|
||||
/* if the rx has caught up with pending then reset buffer positions */
|
||||
if (info->to_client.read_bytes == info->to_client.write_bytes) {
|
||||
info->to_client.read_bytes = info->to_client.read_idx = 0;
|
||||
info->to_client.write_bytes = info->to_client.write_idx = 0;
|
||||
}
|
||||
|
||||
pthread_mutex_unlock(&info->to_client.mutex);
|
||||
|
||||
return sz;
|
||||
}
|
||||
|
||||
|
||||
static void err_sys(const char* msg)
|
||||
{
|
||||
printf("wolfSSL error: %s\n", msg);
|
||||
exit(1);
|
||||
}
|
||||
|
||||
static double gettime_secs(int reset)
|
||||
{
|
||||
struct timeval tv;
|
||||
gettimeofday(&tv, 0);
|
||||
(void)reset;
|
||||
|
||||
return (double)tv.tv_sec + (double)tv.tv_usec / 1000000;
|
||||
}
|
||||
|
||||
static void* client_thread(void* args)
|
||||
{
|
||||
info_t* info = (info_t*)args;
|
||||
unsigned char buf[MEM_BUFFER_SZ];
|
||||
double start;
|
||||
int ret, len;
|
||||
WOLFSSL_CTX* cli_ctx;
|
||||
WOLFSSL* cli_ssl;
|
||||
#ifdef SHOW_PEER_INFO
|
||||
int haveShownPeerInfo = 0;
|
||||
#endif
|
||||
|
||||
/* set up client */
|
||||
cli_ctx = wolfSSL_CTX_new(wolfTLSv1_2_client_method());
|
||||
if (cli_ctx == NULL) err_sys("error creating ctx");
|
||||
|
||||
if (strstr(info->cipher, "ECDSA"))
|
||||
ret = wolfSSL_CTX_load_verify_buffer(cli_ctx, ca_ecc_cert_der_256, sizeof_ca_ecc_cert_der_256, WOLFSSL_FILETYPE_ASN1);
|
||||
else
|
||||
ret = wolfSSL_CTX_load_verify_buffer(cli_ctx, ca_cert_der_2048, sizeof_ca_cert_der_2048, WOLFSSL_FILETYPE_ASN1);
|
||||
if (ret != SSL_SUCCESS) err_sys("error loading CA");
|
||||
|
||||
wolfSSL_SetIOSend(cli_ctx, ClientSend);
|
||||
wolfSSL_SetIORecv(cli_ctx, ClientRecv);
|
||||
|
||||
/* set cipher suite */
|
||||
ret = wolfSSL_CTX_set_cipher_list(cli_ctx, info->cipher);
|
||||
if (ret != SSL_SUCCESS) err_sys("error setting cipher suite");
|
||||
|
||||
#ifndef NO_DH
|
||||
wolfSSL_CTX_SetMinDhKey_Sz(cli_ctx, MIN_DHKEY_BITS);
|
||||
#endif
|
||||
|
||||
while (!info->shutdown) {
|
||||
cli_ssl = wolfSSL_new(cli_ctx);
|
||||
if (cli_ctx == NULL) err_sys("error creating client object");
|
||||
|
||||
wolfSSL_SetIOReadCtx(cli_ssl, info);
|
||||
wolfSSL_SetIOWriteCtx(cli_ssl, info);
|
||||
|
||||
/* perform connect */
|
||||
start = gettime_secs(1);
|
||||
ret = wolfSSL_connect(cli_ssl);
|
||||
start = gettime_secs(0) - start;
|
||||
if (ret != SSL_SUCCESS) {
|
||||
if (info->shutdown)
|
||||
break;
|
||||
err_sys("error connecting client");
|
||||
}
|
||||
info->client_stats.connTime += start;
|
||||
|
||||
#ifdef SHOW_PEER_INFO
|
||||
if (!haveShownPeerInfo) {
|
||||
haveShownPeerInfo = 1;
|
||||
showPeer(cli_ssl);
|
||||
}
|
||||
#endif
|
||||
|
||||
/* write test message to server */
|
||||
len = (int)strlen(kTestStr)+1; /* include null term */
|
||||
start = gettime_secs(1);
|
||||
ret = wolfSSL_write(cli_ssl, kTestStr, len);
|
||||
info->client_stats.txTime += gettime_secs(0) - start;
|
||||
if (ret > 0) {
|
||||
info->client_stats.txTotal += ret;
|
||||
}
|
||||
|
||||
/* read echo of message */
|
||||
start = gettime_secs(1);
|
||||
ret = wolfSSL_read(cli_ssl, buf, sizeof(buf)-1);
|
||||
info->client_stats.rxTime += gettime_secs(0) - start;
|
||||
if (ret > 0) {
|
||||
info->client_stats.rxTotal += ret;
|
||||
}
|
||||
|
||||
/* validate echo */
|
||||
if (strncmp(kTestStr, (char*)buf, strlen(kTestStr)) != 0) {
|
||||
err_sys("echo check failed!\n");
|
||||
}
|
||||
|
||||
info->client_stats.connCount++;
|
||||
|
||||
wolfSSL_free(cli_ssl);
|
||||
}
|
||||
|
||||
/* clean up */
|
||||
wolfSSL_CTX_free(cli_ctx);
|
||||
|
||||
pthread_cond_signal(&info->to_server.cond);
|
||||
info->to_client.done = 1;
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
static void* server_thread(void* args)
|
||||
{
|
||||
info_t* info = (info_t*)args;
|
||||
unsigned char buf[MEM_BUFFER_SZ];
|
||||
double start;
|
||||
int ret, len = 0;
|
||||
WOLFSSL_CTX* srv_ctx;
|
||||
WOLFSSL* srv_ssl;
|
||||
|
||||
/* set up server */
|
||||
srv_ctx = wolfSSL_CTX_new(wolfTLSv1_2_server_method());
|
||||
if (srv_ctx == NULL) err_sys("error creating server ctx");
|
||||
|
||||
if (strstr(info->cipher, "ECDSA"))
|
||||
ret = wolfSSL_CTX_use_PrivateKey_buffer(srv_ctx, ecc_key_der_256, sizeof_ecc_key_der_256, WOLFSSL_FILETYPE_ASN1);
|
||||
else
|
||||
ret = wolfSSL_CTX_use_PrivateKey_buffer(srv_ctx, server_key_der_2048, sizeof_server_key_der_2048, WOLFSSL_FILETYPE_ASN1);
|
||||
if (ret != SSL_SUCCESS) err_sys("error loading server key");
|
||||
|
||||
if (strstr(info->cipher, "ECDSA"))
|
||||
ret = wolfSSL_CTX_use_certificate_buffer(srv_ctx, serv_ecc_der_256, sizeof_serv_ecc_der_256, WOLFSSL_FILETYPE_ASN1);
|
||||
else
|
||||
ret = wolfSSL_CTX_use_certificate_buffer(srv_ctx, server_cert_der_2048, sizeof_server_cert_der_2048, WOLFSSL_FILETYPE_ASN1);
|
||||
if (ret != SSL_SUCCESS) err_sys("error loading server cert");
|
||||
|
||||
wolfSSL_SetIOSend(srv_ctx, ServerSend);
|
||||
wolfSSL_SetIORecv(srv_ctx, ServerRecv);
|
||||
|
||||
/* set cipher suite */
|
||||
ret = wolfSSL_CTX_set_cipher_list(srv_ctx, info->cipher);
|
||||
if (ret != SSL_SUCCESS) err_sys("error setting cipher suite");
|
||||
|
||||
#ifndef NO_DH
|
||||
wolfSSL_CTX_SetMinDhKey_Sz(srv_ctx, MIN_DHKEY_BITS);
|
||||
wolfSSL_CTX_SetTmpDH(srv_ctx, p, sizeof(p), g, sizeof(g));
|
||||
#endif
|
||||
|
||||
while (!info->shutdown) {
|
||||
srv_ssl = wolfSSL_new(srv_ctx);
|
||||
if (srv_ctx == NULL) err_sys("error creating server object");
|
||||
|
||||
wolfSSL_SetIOReadCtx(srv_ssl, info);
|
||||
wolfSSL_SetIOWriteCtx(srv_ssl, info);
|
||||
|
||||
/* accept tls connection without tcp sockets */
|
||||
start = gettime_secs(1);
|
||||
ret = wolfSSL_accept(srv_ssl);
|
||||
start = gettime_secs(0) - start;
|
||||
if (ret != SSL_SUCCESS) {
|
||||
if (info->shutdown)
|
||||
break;
|
||||
err_sys("error on server accept");
|
||||
}
|
||||
|
||||
info->server_stats.connTime += start;
|
||||
|
||||
/* read msg post handshake from client */
|
||||
memset(buf, 0, sizeof(buf));
|
||||
start = gettime_secs(1);
|
||||
ret = wolfSSL_read(srv_ssl, buf, sizeof(buf)-1);
|
||||
info->server_stats.rxTime += gettime_secs(0) - start;
|
||||
if (ret > 0) {
|
||||
info->server_stats.rxTotal += ret;
|
||||
len = ret;
|
||||
}
|
||||
|
||||
/* write message back to client */
|
||||
start = gettime_secs(1);
|
||||
ret = wolfSSL_write(srv_ssl, buf, len);
|
||||
info->server_stats.txTime += gettime_secs(0) - start;
|
||||
if (ret > 0) {
|
||||
info->server_stats.txTotal += ret;
|
||||
}
|
||||
|
||||
info->server_stats.connCount++;
|
||||
|
||||
wolfSSL_free(srv_ssl);
|
||||
}
|
||||
|
||||
/* clean up */
|
||||
wolfSSL_CTX_free(srv_ctx);
|
||||
|
||||
pthread_cond_signal(&info->to_client.cond);
|
||||
info->to_server.done = 1;
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
static void print_stats(stats_t* stat, const char* desc, const char* cipher, int verbose)
|
||||
{
|
||||
const char* formatStr;
|
||||
if (verbose) {
|
||||
formatStr = "wolfSSL %s Benchmark on %s:\n"
|
||||
"\tTotal : %9d bytes\n"
|
||||
"\tNum Conns : %9d\n"
|
||||
"\tRx Total : %9.3f ms\n"
|
||||
"\tTx Total : %9.3f ms\n"
|
||||
"\tRx : %9.3f MB/s\n"
|
||||
"\tTx : %9.3f MB/s\n"
|
||||
"\tConnect : %9.3f ms\n"
|
||||
"\tConnect Avg : %9.3f ms\n";
|
||||
}
|
||||
else {
|
||||
formatStr = "%s\t%s\t%d\t%9d\t%9.3f\t%9.3f\t%9.3f\t%9.3f\t%9.3f\t%9.3f\n";
|
||||
}
|
||||
|
||||
printf(formatStr,
|
||||
desc,
|
||||
cipher,
|
||||
stat->txTotal + stat->rxTotal,
|
||||
stat->connCount,
|
||||
stat->txTime * 1000,
|
||||
stat->rxTime * 1000,
|
||||
stat->txTotal / stat->txTime / 1024 / 1024,
|
||||
stat->rxTotal / stat->rxTime / 1024 / 1024,
|
||||
stat->connTime * 1000,
|
||||
stat->connTime * 1000 / stat->connCount);
|
||||
}
|
||||
|
||||
int bench_tls(void)
|
||||
{
|
||||
info_t theadInfo[THREAD_COUNT];
|
||||
info_t* info;
|
||||
int i, shutdown;
|
||||
char *cipher, *next_cipher, ciphers[4096];
|
||||
|
||||
#ifdef DEBUG_WOLFSSL
|
||||
wolfSSL_Debugging_ON();
|
||||
#endif
|
||||
|
||||
/* Initialize wolfSSL */
|
||||
wolfSSL_Init();
|
||||
|
||||
/* Run for each cipher */
|
||||
wolfSSL_get_ciphers(ciphers, (int)sizeof(ciphers));
|
||||
|
||||
#ifndef SHOW_VERBOSE_OUTPUT
|
||||
printf("Side\tCipher\tTotal Bytes\tNum Conns\tRx ms\tTx ms\tRx MB/s\tTx MB/s\tConnect Total ms\tConnect Avg ms\n");
|
||||
#endif
|
||||
|
||||
/* parse by : */
|
||||
cipher = ciphers;
|
||||
while (cipher != NULL && cipher[0] != '\0') {
|
||||
next_cipher = strchr(cipher, ':');
|
||||
if (next_cipher != NULL) {
|
||||
cipher[next_cipher - cipher] = '\0';
|
||||
}
|
||||
|
||||
#ifdef SHOW_VERBOSE_OUTPUT
|
||||
printf("Cipher: %s\n", cipher);
|
||||
#endif
|
||||
|
||||
memset(&theadInfo, 0, sizeof(theadInfo));
|
||||
for (i=0; i<THREAD_COUNT; i++) {
|
||||
info = &theadInfo[i];
|
||||
|
||||
info->cipher = cipher;
|
||||
|
||||
pthread_mutex_init(&info->to_server.mutex, NULL);
|
||||
pthread_mutex_init(&info->to_client.mutex, NULL);
|
||||
pthread_cond_init(&info->to_server.cond, NULL);
|
||||
pthread_cond_init(&info->to_client.cond, NULL);
|
||||
|
||||
pthread_create(&info->to_server.tid, NULL, server_thread, info);
|
||||
pthread_create(&info->to_client.tid, NULL, client_thread, info);
|
||||
|
||||
/* State that we won't be joining this thread */
|
||||
pthread_detach(info->to_server.tid);
|
||||
pthread_detach(info->to_client.tid);
|
||||
}
|
||||
|
||||
/* run for x time */
|
||||
sleep(RUNTIME_SEC);
|
||||
|
||||
/* mark threads to quit */
|
||||
for (i = 0; i < THREAD_COUNT; ++i) {
|
||||
info = &theadInfo[i];
|
||||
info->shutdown = 1;
|
||||
}
|
||||
|
||||
/* Suspend shutdown until all threads are closed */
|
||||
do {
|
||||
shutdown = 1;
|
||||
|
||||
for (i = 0; i < THREAD_COUNT; ++i) {
|
||||
info = &theadInfo[i];
|
||||
if (!info->to_client.done || !info->to_server.done) {
|
||||
shutdown = 0;
|
||||
}
|
||||
}
|
||||
} while (!shutdown);
|
||||
|
||||
#ifdef SHOW_VERBOSE_OUTPUT
|
||||
printf("Shutdown complete\n");
|
||||
|
||||
/* print results */
|
||||
for (i = 0; i < THREAD_COUNT; ++i) {
|
||||
info = &theadInfo[i];
|
||||
|
||||
printf("\nThread %d\n", i);
|
||||
print_stats(&info->server_stats, "Server", info->cipher, 1);
|
||||
print_stats(&info->client_stats, "Server", info->cipher, 1);
|
||||
}
|
||||
#endif
|
||||
|
||||
/* print combined results for more than one thread */
|
||||
{
|
||||
stats_t cli_comb;
|
||||
stats_t srv_comb;
|
||||
memset(&cli_comb, 0, sizeof(cli_comb));
|
||||
memset(&srv_comb, 0, sizeof(srv_comb));
|
||||
|
||||
for (i = 0; i < THREAD_COUNT; ++i) {
|
||||
info = &theadInfo[i];
|
||||
|
||||
cli_comb.connCount += info->client_stats.connCount;
|
||||
srv_comb.connCount += info->server_stats.connCount;
|
||||
|
||||
cli_comb.connTime += info->client_stats.connTime;
|
||||
srv_comb.connTime += info->server_stats.connTime;
|
||||
|
||||
cli_comb.rxTotal += info->client_stats.rxTotal;
|
||||
srv_comb.rxTotal += info->server_stats.rxTotal;
|
||||
|
||||
cli_comb.rxTime += info->client_stats.rxTime;
|
||||
srv_comb.rxTime += info->server_stats.rxTime;
|
||||
|
||||
cli_comb.txTotal += info->client_stats.txTotal;
|
||||
srv_comb.txTotal += info->server_stats.txTotal;
|
||||
|
||||
cli_comb.txTime += info->client_stats.txTime;
|
||||
srv_comb.txTime += info->server_stats.txTime;
|
||||
}
|
||||
|
||||
#ifdef SHOW_VERBOSE_OUTPUT
|
||||
printf("Totals for %d Threads\n", THREAD_COUNT);
|
||||
#endif
|
||||
print_stats(&srv_comb, "Server", theadInfo[0].cipher, 0);
|
||||
print_stats(&cli_comb, "Client", theadInfo[0].cipher, 0);
|
||||
}
|
||||
|
||||
/* target next cipher */
|
||||
cipher = (next_cipher) ? next_cipher+1 : NULL;
|
||||
}
|
||||
|
||||
/* Cleanup and return */
|
||||
wolfSSL_Cleanup(); /* Cleanup the wolfSSL environment */
|
||||
|
||||
return 0; /* Return reporting a success */
|
||||
}
|
||||
|
||||
#ifndef NO_MAIN_DRIVER
|
||||
|
||||
int main(int argc, char** argv)
|
||||
{
|
||||
(void)argc;
|
||||
(void)argv;
|
||||
|
||||
bench_tls();
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
#endif
|
@ -1,6 +1,7 @@
|
||||
# vim:ft=automake
|
||||
# All paths should be given relative to the root
|
||||
|
||||
include examples/benchmark/include.am
|
||||
include examples/client/include.am
|
||||
include examples/echoclient/include.am
|
||||
include examples/echoserver/include.am
|
||||
|
@ -1228,7 +1228,7 @@ static void bench_aescbc_internal(int doAsync, const byte* key, word32 keySz,
|
||||
const byte* iv, const char* encLabel,
|
||||
const char* decLabel)
|
||||
{
|
||||
int ret, i, count = 0, times, pending = 0;
|
||||
int ret = 0, i, count = 0, times, pending = 0;
|
||||
Aes enc[BENCH_MAX_PENDING];
|
||||
double start;
|
||||
|
||||
@ -1332,7 +1332,7 @@ static void bench_aesgcm_internal(int doAsync, const byte* key, word32 keySz,
|
||||
const byte* iv, word32 ivSz,
|
||||
const char* encLabel, const char* decLabel)
|
||||
{
|
||||
int ret, i, count = 0, times, pending = 0;
|
||||
int ret = 0, i, count = 0, times, pending = 0;
|
||||
Aes enc[BENCH_MAX_PENDING];
|
||||
double start;
|
||||
|
||||
@ -1736,7 +1736,7 @@ void bench_camellia(void)
|
||||
#ifndef NO_DES3
|
||||
void bench_des(int doAsync)
|
||||
{
|
||||
int ret, i, count = 0, times, pending = 0;
|
||||
int ret = 0, i, count = 0, times, pending = 0;
|
||||
Des3 enc[BENCH_MAX_PENDING];
|
||||
double start;
|
||||
|
||||
@ -1793,7 +1793,7 @@ void bench_idea(void)
|
||||
{
|
||||
Idea enc;
|
||||
double start;
|
||||
int ret, i, count;
|
||||
int ret = 0, i, count;
|
||||
|
||||
ret = wc_IdeaSetKey(&enc, bench_key, IDEA_KEY_SIZE, bench_iv,
|
||||
IDEA_ENCRYPTION);
|
||||
@ -1817,7 +1817,7 @@ void bench_idea(void)
|
||||
#ifndef NO_RC4
|
||||
void bench_arc4(int doAsync)
|
||||
{
|
||||
int ret, i, count = 0, times, pending = 0;
|
||||
int ret = 0, i, count = 0, times, pending = 0;
|
||||
Arc4 enc[BENCH_MAX_PENDING];
|
||||
double start;
|
||||
|
||||
@ -1963,7 +1963,7 @@ void bench_md5(int doAsync)
|
||||
{
|
||||
wc_Md5 hash[BENCH_MAX_PENDING];
|
||||
double start;
|
||||
int ret, i, count = 0, times, pending = 0;
|
||||
int ret = 0, i, count = 0, times, pending = 0;
|
||||
DECLARE_ARRAY(digest, byte, BENCH_MAX_PENDING, WC_MD5_DIGEST_SIZE, HEAP_HINT);
|
||||
|
||||
/* clear for done cleanup */
|
||||
@ -2035,7 +2035,7 @@ void bench_sha(int doAsync)
|
||||
{
|
||||
wc_Sha hash[BENCH_MAX_PENDING];
|
||||
double start;
|
||||
int ret, i, count = 0, times, pending = 0;
|
||||
int ret = 0, i, count = 0, times, pending = 0;
|
||||
DECLARE_ARRAY(digest, byte, BENCH_MAX_PENDING, WC_SHA_DIGEST_SIZE, HEAP_HINT);
|
||||
|
||||
/* clear for done cleanup */
|
||||
@ -2170,7 +2170,7 @@ void bench_sha256(int doAsync)
|
||||
{
|
||||
wc_Sha256 hash[BENCH_MAX_PENDING];
|
||||
double start;
|
||||
int ret, i, count = 0, times, pending = 0;
|
||||
int ret = 0, i, count = 0, times, pending = 0;
|
||||
DECLARE_ARRAY(digest, byte, BENCH_MAX_PENDING, WC_SHA256_DIGEST_SIZE, HEAP_HINT);
|
||||
|
||||
/* clear for done cleanup */
|
||||
@ -2238,7 +2238,7 @@ void bench_sha384(int doAsync)
|
||||
{
|
||||
wc_Sha384 hash[BENCH_MAX_PENDING];
|
||||
double start;
|
||||
int ret, i, count = 0, times, pending = 0;
|
||||
int ret = 0, i, count = 0, times, pending = 0;
|
||||
DECLARE_ARRAY(digest, byte, BENCH_MAX_PENDING, WC_SHA384_DIGEST_SIZE, HEAP_HINT);
|
||||
|
||||
/* clear for done cleanup */
|
||||
@ -2303,7 +2303,7 @@ void bench_sha512(int doAsync)
|
||||
{
|
||||
wc_Sha512 hash[BENCH_MAX_PENDING];
|
||||
double start;
|
||||
int ret, i, count = 0, times, pending = 0;
|
||||
int ret = 0, i, count = 0, times, pending = 0;
|
||||
DECLARE_ARRAY(digest, byte, BENCH_MAX_PENDING, WC_SHA512_DIGEST_SIZE, HEAP_HINT);
|
||||
|
||||
/* clear for done cleanup */
|
||||
@ -2370,7 +2370,7 @@ void bench_sha3_224(int doAsync)
|
||||
{
|
||||
Sha3 hash[BENCH_MAX_PENDING];
|
||||
double start;
|
||||
int ret, i, count = 0, times, pending = 0;
|
||||
int ret = 0, i, count = 0, times, pending = 0;
|
||||
DECLARE_ARRAY(digest, byte, BENCH_MAX_PENDING, SHA3_224_DIGEST_SIZE, HEAP_HINT);
|
||||
|
||||
/* clear for done cleanup */
|
||||
@ -2435,7 +2435,7 @@ void bench_sha3_256(int doAsync)
|
||||
{
|
||||
Sha3 hash[BENCH_MAX_PENDING];
|
||||
double start;
|
||||
int ret, i, count = 0, times, pending = 0;
|
||||
int ret = 0, i, count = 0, times, pending = 0;
|
||||
DECLARE_ARRAY(digest, byte, BENCH_MAX_PENDING, SHA3_256_DIGEST_SIZE, HEAP_HINT);
|
||||
|
||||
/* clear for done cleanup */
|
||||
@ -2500,7 +2500,7 @@ void bench_sha3_384(int doAsync)
|
||||
{
|
||||
Sha3 hash[BENCH_MAX_PENDING];
|
||||
double start;
|
||||
int ret, i, count = 0, times, pending = 0;
|
||||
int ret = 0, i, count = 0, times, pending = 0;
|
||||
DECLARE_ARRAY(digest, byte, BENCH_MAX_PENDING, SHA3_384_DIGEST_SIZE, HEAP_HINT);
|
||||
|
||||
/* clear for done cleanup */
|
||||
@ -2565,7 +2565,7 @@ void bench_sha3_512(int doAsync)
|
||||
{
|
||||
Sha3 hash[BENCH_MAX_PENDING];
|
||||
double start;
|
||||
int ret, i, count = 0, times, pending = 0;
|
||||
int ret = 0, i, count = 0, times, pending = 0;
|
||||
DECLARE_ARRAY(digest, byte, BENCH_MAX_PENDING, SHA3_512_DIGEST_SIZE, HEAP_HINT);
|
||||
|
||||
/* clear for done cleanup */
|
||||
@ -2768,7 +2768,7 @@ static void bench_hmac(int doAsync, int type, int digestSz,
|
||||
{
|
||||
Hmac hmac[BENCH_MAX_PENDING];
|
||||
double start;
|
||||
int ret, i, count = 0, times, pending = 0;
|
||||
int ret = 0, i, count = 0, times, pending = 0;
|
||||
#if defined(BENCH_EMBEDDED)
|
||||
DECLARE_ARRAY(digest, byte, BENCH_MAX_PENDING, MAX_DIGEST_SIZE, HEAP_HINT);
|
||||
#else
|
||||
@ -3012,7 +3012,7 @@ void bench_rsaKeyGen(int doAsync)
|
||||
|
||||
void bench_rsa(int doAsync)
|
||||
{
|
||||
int ret, i, times, count = 0, pending = 0;
|
||||
int ret = 0, i, times, count = 0, pending = 0;
|
||||
size_t bytes;
|
||||
word32 idx = 0;
|
||||
const byte* tmp;
|
||||
@ -3201,7 +3201,7 @@ exit:
|
||||
|
||||
void bench_dh(int doAsync)
|
||||
{
|
||||
int ret, i;
|
||||
int ret = 0, i;
|
||||
int count = 0, times, pending = 0;
|
||||
const byte* tmp = NULL;
|
||||
double start = 0.0f;
|
||||
@ -3595,7 +3595,7 @@ exit:
|
||||
|
||||
void bench_ecc(int doAsync)
|
||||
{
|
||||
int ret, i, times, count, pending = 0;
|
||||
int ret = 0, i, times, count, pending = 0;
|
||||
const int keySize = BENCH_ECC_SIZE;
|
||||
ecc_key genKey[BENCH_MAX_PENDING];
|
||||
#ifdef HAVE_ECC_DHE
|
||||
|
@ -27,7 +27,7 @@
|
||||
#include <wolfssl/wolfcrypt/settings.h>
|
||||
#include <wolfssl/wolfcrypt/error-crypt.h>
|
||||
|
||||
#ifndef NO_AES
|
||||
#if !defined(NO_AES) && !defined(WOLFSSL_ARMASM)
|
||||
#include <wolfssl/wolfcrypt/aes.h>
|
||||
#include <wolfssl/wolfcrypt/cpuid.h>
|
||||
|
||||
|
@ -3811,7 +3811,7 @@ static int ecc_mul2add(ecc_point* A, mp_int* kA,
|
||||
unsigned char* tA;
|
||||
unsigned char* tB;
|
||||
int err = MP_OKAY, first, x, y;
|
||||
mp_digit mp;
|
||||
mp_digit mp = 0;
|
||||
|
||||
/* argchks */
|
||||
if (A == NULL || kA == NULL || B == NULL || kB == NULL || C == NULL ||
|
||||
@ -4318,7 +4318,7 @@ int wc_ecc_verify_hash_ex(mp_int *r, mp_int *s, const byte* hash,
|
||||
#else /* FREESCALE_LTC_ECC */
|
||||
#ifndef ECC_SHAMIR
|
||||
{
|
||||
mp_digit mp;
|
||||
mp_digit mp = 0;
|
||||
|
||||
/* compute u1*mG + u2*mQ = mG */
|
||||
if (err == MP_OKAY) {
|
||||
|
@ -28,7 +28,7 @@
|
||||
|
||||
#include <wolfssl/wolfcrypt/settings.h>
|
||||
|
||||
#if !defined(NO_SHA256)
|
||||
#if !defined(NO_SHA256) && !defined(WOLFSSL_ARMASM)
|
||||
|
||||
#include <wolfssl/wolfcrypt/sha256.h>
|
||||
#include <wolfssl/wolfcrypt/error-crypt.h>
|
||||
|
@ -27,8 +27,8 @@
|
||||
*/
|
||||
|
||||
/**
|
||||
* Edited by Moises Guimaraes (moisesguimaraesm@gmail.com)
|
||||
* to fit CyaSSL's needs.
|
||||
* Edited by Moises Guimaraes (moises@wolfssl.com)
|
||||
* to fit wolfSSL's needs.
|
||||
*/
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
@ -1987,7 +1987,7 @@ void fp_set_int(fp_int *a, unsigned long b)
|
||||
|
||||
/* use direct fp_set if b is less than fp_digit max */
|
||||
if (b < FP_DIGIT_MAX) {
|
||||
fp_set (a, b);
|
||||
fp_set (a, (fp_digit)b);
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -10687,7 +10687,7 @@ typedef struct eccVector {
|
||||
|
||||
static int ecc_test_vector_item(const eccVector* vector)
|
||||
{
|
||||
int ret = 0, verify;
|
||||
int ret = 0, verify = 0;
|
||||
word32 x;
|
||||
ecc_key userA;
|
||||
DECLARE_VAR(sig, byte, ECC_SIG_SIZE, HEAP_HINT);
|
||||
|
Reference in New Issue
Block a user