diff --git a/AxolotlKit.podspec b/AxolotlKit.podspec index 433226b..74b7231 100644 --- a/AxolotlKit.podspec +++ b/AxolotlKit.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = "AxolotlKit" - s.version = "0.8.1" + s.version = "0.9.0" s.summary = "AxolotlKit is a Free implementation of the Axolotl protocol in Objective-C" s.homepage = "https://github.com/WhisperSystems/AxolotlKit" s.license = "GPLv2" diff --git a/AxolotlKit.xcodeproj/project.pbxproj b/AxolotlKit.xcodeproj/project.pbxproj index fb93cd3..d22a143 100644 --- a/AxolotlKit.xcodeproj/project.pbxproj +++ b/AxolotlKit.xcodeproj/project.pbxproj @@ -7,8 +7,7 @@ objects = { /* Begin PBXBuildFile section */ - 053B67B83D50637758B1B452 /* libPods-AxolotlKit.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 75608451B1B3A2376073DF48 /* libPods-AxolotlKit.a */; }; - 6D26FD663E5FAC929BC98FE5 /* libPods-AxolotlKitTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FF744C9D36F3B6418C094847 /* libPods-AxolotlKitTests.a */; }; + 57470C183587C149ABC5FAB1 /* Pods_AxolotlKitTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1B975DDFFBFB50034D581DD9 /* Pods_AxolotlKitTests.framework */; }; B619AF1419FC148D00E33198 /* ProtobuffsTests.m in Sources */ = {isa = PBXBuildFile; fileRef = B619AF1319FC148D00E33198 /* ProtobuffsTests.m */; }; B61E841E19D17C33004FC382 /* HKDFTest.m in Sources */ = {isa = PBXBuildFile; fileRef = B61E841C19D1780D004FC382 /* HKDFTest.m */; }; B62EFBF01A9140190072ADD3 /* PreKeyBundleTests.m in Sources */ = {isa = PBXBuildFile; fileRef = B62EFBEF1A9140190072ADD3 /* PreKeyBundleTests.m */; }; @@ -32,6 +31,7 @@ B6BB8C3519F7E773008A5895 /* SessionBuilderTests.m in Sources */ = {isa = PBXBuildFile; fileRef = B6BB8C3419F7E773008A5895 /* SessionBuilderTests.m */; }; B6D41A2319DB4F8E00EE9BAA /* SessionCipherTest.m in Sources */ = {isa = PBXBuildFile; fileRef = B6D41A2219DB4F8E00EE9BAA /* SessionCipherTest.m */; }; B6E37AE019CF107C00E619CA /* ECCTests.m in Sources */ = {isa = PBXBuildFile; fileRef = B6E37ADF19CF107C00E619CA /* ECCTests.m */; }; + D75CF4C560CF9758A0E0550F /* Pods_AxolotlKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FF81D400C79761E2EBFB1BEA /* Pods_AxolotlKit.framework */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -45,9 +45,9 @@ /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ + 1B975DDFFBFB50034D581DD9 /* Pods_AxolotlKitTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_AxolotlKitTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 273B59DE0B6958AC58F56CBC /* Pods-AxolotlKit.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-AxolotlKit.debug.xcconfig"; path = "Pods/Target Support Files/Pods-AxolotlKit/Pods-AxolotlKit.debug.xcconfig"; sourceTree = ""; }; 535B95F3C3486538E9B66E8B /* Pods-AxolotlKitTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-AxolotlKitTests.release.xcconfig"; path = "Pods/Target Support Files/Pods-AxolotlKitTests/Pods-AxolotlKitTests.release.xcconfig"; sourceTree = ""; }; - 75608451B1B3A2376073DF48 /* libPods-AxolotlKit.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-AxolotlKit.a"; sourceTree = BUILT_PRODUCTS_DIR; }; A301BD7DC87662E4F12CE89C /* Pods-AxolotlKit.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-AxolotlKit.release.xcconfig"; path = "Pods/Target Support Files/Pods-AxolotlKit/Pods-AxolotlKit.release.xcconfig"; sourceTree = ""; }; B619AF1319FC148D00E33198 /* ProtobuffsTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ProtobuffsTests.m; sourceTree = ""; }; B61E841C19D1780D004FC382 /* HKDFTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HKDFTest.m; sourceTree = ""; }; @@ -79,7 +79,7 @@ B6D41A2219DB4F8E00EE9BAA /* SessionCipherTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SessionCipherTest.m; sourceTree = ""; }; B6E37ADF19CF107C00E619CA /* ECCTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ECCTests.m; sourceTree = ""; }; F18946391DB22E6D23D4168E /* Pods-AxolotlKitTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-AxolotlKitTests.debug.xcconfig"; path = "Pods/Target Support Files/Pods-AxolotlKitTests/Pods-AxolotlKitTests.debug.xcconfig"; sourceTree = ""; }; - FF744C9D36F3B6418C094847 /* libPods-AxolotlKitTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-AxolotlKitTests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + FF81D400C79761E2EBFB1BEA /* Pods_AxolotlKit.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_AxolotlKit.framework; sourceTree = BUILT_PRODUCTS_DIR; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -90,7 +90,7 @@ B63B2FA1197D8AFD00E09F65 /* CoreGraphics.framework in Frameworks */, B63B2FA3197D8AFD00E09F65 /* UIKit.framework in Frameworks */, B63B2F9F197D8AFD00E09F65 /* Foundation.framework in Frameworks */, - 053B67B83D50637758B1B452 /* libPods-AxolotlKit.a in Frameworks */, + D75CF4C560CF9758A0E0550F /* Pods_AxolotlKit.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -101,7 +101,7 @@ B63B2FDC197D8B9600E09F65 /* XCTest.framework in Frameworks */, B63B2FDE197D8B9600E09F65 /* UIKit.framework in Frameworks */, B63B2FDD197D8B9600E09F65 /* Foundation.framework in Frameworks */, - 6D26FD663E5FAC929BC98FE5 /* libPods-AxolotlKitTests.a in Frameworks */, + 57470C183587C149ABC5FAB1 /* Pods_AxolotlKitTests.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -115,8 +115,8 @@ B63B2FA0197D8AFD00E09F65 /* CoreGraphics.framework */, B63B2FA2197D8AFD00E09F65 /* UIKit.framework */, B63B2FB7197D8AFD00E09F65 /* XCTest.framework */, - 75608451B1B3A2376073DF48 /* libPods-AxolotlKit.a */, - FF744C9D36F3B6418C094847 /* libPods-AxolotlKitTests.a */, + FF81D400C79761E2EBFB1BEA /* Pods_AxolotlKit.framework */, + 1B975DDFFBFB50034D581DD9 /* Pods_AxolotlKitTests.framework */, ); name = Frameworks; sourceTree = ""; @@ -350,9 +350,20 @@ files = ( ); inputPaths = ( + "${SRCROOT}/Pods/Target Support Files/Pods-AxolotlKit/Pods-AxolotlKit-frameworks.sh", + "${BUILT_PRODUCTS_DIR}/AxolotlKit/AxolotlKit.framework", + "${BUILT_PRODUCTS_DIR}/CocoaLumberjack/CocoaLumberjack.framework", + "${BUILT_PRODUCTS_DIR}/Curve25519Kit/Curve25519Kit.framework", + "${BUILT_PRODUCTS_DIR}/HKDFKit/HKDFKit.framework", + "${BUILT_PRODUCTS_DIR}/ProtocolBuffers/ProtocolBuffers.framework", ); name = "[CP] Embed Pods Frameworks"; outputPaths = ( + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/AxolotlKit.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/CocoaLumberjack.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Curve25519Kit.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/HKDFKit.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/ProtocolBuffers.framework", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; @@ -410,13 +421,16 @@ files = ( ); inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", ); name = "[CP] Check Pods Manifest.lock"; outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-AxolotlKit-checkManifestLockResult.txt", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n"; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; showEnvVarsInLog = 0; }; F7D1D7822CA76333BE3F65B0 /* [CP] Check Pods Manifest.lock */ = { @@ -425,13 +439,16 @@ files = ( ); inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", ); name = "[CP] Check Pods Manifest.lock"; outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-AxolotlKitTests-checkManifestLockResult.txt", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n"; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; showEnvVarsInLog = 0; }; /* End PBXShellScriptBuildPhase section */ diff --git a/AxolotlKitTests/ECCTests.m b/AxolotlKitTests/ECCTests.m index 38257f6..e980b17 100644 --- a/AxolotlKitTests/ECCTests.m +++ b/AxolotlKitTests/ECCTests.m @@ -1,17 +1,13 @@ // -// ECCTests.m -// AxolotlKit -// -// Created by Frederic Jacobs on 21/09/14. -// Copyright (c) 2014 Frederic Jacobs. All rights reserved. +// Copyright (c) 2017 Open Whisper Systems. All rights reserved. // #import #import #import "ECKeyPair+ECKeyPairTesting.h" -#import <25519/Curve25519.h> -#import <25519/Ed25519.h> +#import +#import @interface ECCTests : XCTestCase diff --git a/AxolotlKitTests/PreKeyBundleTests.m b/AxolotlKitTests/PreKeyBundleTests.m index 0644055..4c40cd1 100644 --- a/AxolotlKitTests/PreKeyBundleTests.m +++ b/AxolotlKitTests/PreKeyBundleTests.m @@ -1,15 +1,11 @@ // -// PreKeyBundleTests.m -// AxolotlKit -// -// Created by Frederic Jacobs on 15/02/15. -// Copyright (c) 2015 Frederic Jacobs. All rights reserved. +// Copyright (c) 2017 Open Whisper Systems. All rights reserved. // #import -#import "PreKeyBundle.h" -#import <25519/Curve25519.h> +#import +#import @interface PreKeyBundleTests : XCTestCase diff --git a/AxolotlKitTests/ProtobuffsTests.m b/AxolotlKitTests/ProtobuffsTests.m index 21d0ecf..256a6a7 100644 --- a/AxolotlKitTests/ProtobuffsTests.m +++ b/AxolotlKitTests/ProtobuffsTests.m @@ -1,16 +1,12 @@ // -// ProtobuffsTests.m -// AxolotlKit -// -// Created by Frederic Jacobs on 25/10/14. -// Copyright (c) 2014 Frederic Jacobs. All rights reserved. +// Copyright (c) 2017 Open Whisper Systems. All rights reserved. // #import -#import "PreKeyWhisperMessage.h" -#import "WhisperMessage.h" -#import "WhisperTextProtocol.pb.h" +#import +#import +#import @interface ProtobuffsTests : XCTestCase diff --git a/AxolotlKitTests/RatchetingSessionTest.m b/AxolotlKitTests/RatchetingSessionTest.m index 6119607..6ab5a71 100644 --- a/AxolotlKitTests/RatchetingSessionTest.m +++ b/AxolotlKitTests/RatchetingSessionTest.m @@ -4,8 +4,8 @@ #import -#import <25519/Curve25519.h> -#import <25519/Ed25519.h> +#import +#import #import "AxolotlInMemoryStore.h" #import "AliceAxolotlParameters.h" diff --git a/AxolotlKitTests/SessionBuilderTests.m b/AxolotlKitTests/SessionBuilderTests.m index 72608bd..5f6ced0 100644 --- a/AxolotlKitTests/SessionBuilderTests.m +++ b/AxolotlKitTests/SessionBuilderTests.m @@ -2,13 +2,13 @@ // Copyright (c) 2017 Open Whisper Systems. All rights reserved. // -#import #import "AxolotlInMemoryStore.h" -#import "SessionBuilder.h" -#import "SessionCipher.h" -#import "AxolotlExceptions.h" +#import +#import +#import +#import -#import <25519/Ed25519.h> +#import @interface PreKeyWhisperMessage () diff --git a/AxolotlKitTests/SessionCipherTest.m b/AxolotlKitTests/SessionCipherTest.m index 40e8a36..9744161 100644 --- a/AxolotlKitTests/SessionCipherTest.m +++ b/AxolotlKitTests/SessionCipherTest.m @@ -5,14 +5,14 @@ #import #import -#import <25519/Curve25519.h> -#import "AxolotlInMemoryStore.h" #import "AliceAxolotlParameters.h" +#import "AxolotlInMemoryStore.h" #import "BobAxolotlParameters.h" +#import "ChainKey.h" #import "RatchetingSession.h" #import "SessionBuilder.h" #import "SessionCipher.h" -#import "Chainkey.h" +#import #import "SessionState.h" diff --git a/AxolotlKitTests/WhisperMessageSerialization.m b/AxolotlKitTests/WhisperMessageSerialization.m index 2808a11..cd3e46a 100644 --- a/AxolotlKitTests/WhisperMessageSerialization.m +++ b/AxolotlKitTests/WhisperMessageSerialization.m @@ -1,14 +1,10 @@ // -// Serialization.m -// AxolotlKit -// -// Created by Frederic Jacobs on 26/10/14. -// Copyright (c) 2014 Frederic Jacobs. All rights reserved. +// Copyright (c) 2017 Open Whisper Systems. All rights reserved. // -#import <25519/Curve25519.h> +#import -#import "WhisperMessage.h" +#import #import @interface WhisperMessageSerialization : XCTestCase diff --git a/Podfile b/Podfile index 47b5698..a77cf6a 100644 --- a/Podfile +++ b/Podfile @@ -1,7 +1,11 @@ platform :ios, '8.0' +use_frameworks! + target 'AxolotlKit' do pod 'AxolotlKit', path: '.' + pod 'Curve25519Kit', git: 'https://github.com/WhisperSystems/25519.git', branch: 'mkirk/framework-friendly' + pod 'HKDFKit', git: 'https://github.com/WhisperSystems/HKDFKit.git' target 'AxolotlKitTests' do inherit! :search_paths diff --git a/Podfile.lock b/Podfile.lock index 0fc7e79..bc63bbc 100644 --- a/Podfile.lock +++ b/Podfile.lock @@ -1,8 +1,7 @@ PODS: - - 25519 (2.0.2) - - AxolotlKit (0.8.1): - - 25519 (~> 2.0.1) + - AxolotlKit (0.9.0): - CocoaLumberjack + - Curve25519Kit (~> 2.1.0) - HKDFKit (~> 0.0.3) - ProtocolBuffers (~> 1.9.8) - CocoaLumberjack (3.1.0): @@ -11,23 +10,39 @@ PODS: - CocoaLumberjack/Default (3.1.0) - CocoaLumberjack/Extensions (3.1.0): - CocoaLumberjack/Default + - Curve25519Kit (2.1.0) - HKDFKit (0.0.3) - ProtocolBuffers (1.9.11) DEPENDENCIES: - AxolotlKit (from `.`) + - Curve25519Kit (from `https://github.com/WhisperSystems/25519.git`, branch `mkirk/framework-friendly`) + - HKDFKit (from `https://github.com/WhisperSystems/HKDFKit.git`) EXTERNAL SOURCES: AxolotlKit: - :path: "." + :path: . + Curve25519Kit: + :branch: mkirk/framework-friendly + :git: https://github.com/WhisperSystems/25519.git + HKDFKit: + :git: https://github.com/WhisperSystems/HKDFKit.git + +CHECKOUT OPTIONS: + Curve25519Kit: + :commit: 03a19c80aafc10a3464f0c086b1eb38239c507ac + :git: https://github.com/WhisperSystems/25519.git + HKDFKit: + :commit: 6f9f183da3370c902344dd1f444ec0e0387a833f + :git: https://github.com/WhisperSystems/HKDFKit.git SPEC CHECKSUMS: - '25519': dc4bad7e2dbcbf1efa121068a705a44cd98c80fc - AxolotlKit: ba0ab24b879d34559a68e1270b079cc9bd7b3417 + AxolotlKit: 7cfd2e71329b8dc398734e95b936450a2081fd60 CocoaLumberjack: 8311463ddf9ee86a06ef92a071dd656c89244500 - HKDFKit: c058305d6f64b84f28c50bd7aa89574625bcb62a + Curve25519Kit: 76d0859ecb34704f7732847812363f83b23a6a59 + HKDFKit: a7e8b8661f2a137e5d50a9e2197c22d538ae52d9 ProtocolBuffers: d509225eb2ea43d9582a59e94348fcf86e2abd65 -PODFILE CHECKSUM: 620aef96f4f83d45f76ba8405fc626a76a47f95f +PODFILE CHECKSUM: c2e75658e321816107a217002a406b7ddc41c79a -COCOAPODS: 1.2.1 +COCOAPODS: 1.3.1