iCloud fixes.
[UPDATED] Moved shared MPAppDelegate code into separate files depending on the code's responsibility. [UPDATED] iCloud implementation removed in favor of iCloudStoreManager's managed implementation. [FIXED] iCloud configuration made AppStore friendly.
This commit is contained in:
parent
98080ceb51
commit
f622b2c7d4
3
.gitmodules
vendored
3
.gitmodules
vendored
@ -4,3 +4,6 @@
|
|||||||
[submodule "External/InAppSettingsKit"]
|
[submodule "External/InAppSettingsKit"]
|
||||||
path = External/InAppSettingsKit
|
path = External/InAppSettingsKit
|
||||||
url = git://github.com/futuretap/InAppSettingsKit.git
|
url = git://github.com/futuretap/InAppSettingsKit.git
|
||||||
|
[submodule "External/iCloudStoreManager"]
|
||||||
|
path = External/iCloudStoreManager
|
||||||
|
url = git://github.com/alekseyn/iCloudStoreManager.git
|
||||||
|
2
External/Pearl
vendored
2
External/Pearl
vendored
@ -1 +1 @@
|
|||||||
Subproject commit 9336e50d3b896bac1478fe4ac8313387a85114c2
|
Subproject commit a78cd7daf1fae0fc9e86702de9b9f6d5782ae352
|
1
External/iCloudStoreManager
vendored
Submodule
1
External/iCloudStoreManager
vendored
Submodule
@ -0,0 +1 @@
|
|||||||
|
Subproject commit 303b3a3e5c092c21d8e0c92cbe9145b6492b6c7b
|
@ -654,6 +654,12 @@
|
|||||||
DA60116515057F10008E9AB6 /* tip_location_wood@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = DA600EE315057F10008E9AB6 /* tip_location_wood@2x.png */; };
|
DA60116515057F10008E9AB6 /* tip_location_wood@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = DA600EE315057F10008E9AB6 /* tip_location_wood@2x.png */; };
|
||||||
DA60116715057FDD008E9AB6 /* iTunesArtwork-Rounded.png in Resources */ = {isa = PBXBuildFile; fileRef = DA60116615057FDD008E9AB6 /* iTunesArtwork-Rounded.png */; };
|
DA60116715057FDD008E9AB6 /* iTunesArtwork-Rounded.png in Resources */ = {isa = PBXBuildFile; fileRef = DA60116615057FDD008E9AB6 /* iTunesArtwork-Rounded.png */; };
|
||||||
DA60116C15060F28008E9AB6 /* Pearl.dylib in CopyFiles */ = {isa = PBXBuildFile; fileRef = DAB8D9D81503940100CED3BC /* Pearl.dylib */; };
|
DA60116C15060F28008E9AB6 /* Pearl.dylib in CopyFiles */ = {isa = PBXBuildFile; fileRef = DAB8D9D81503940100CED3BC /* Pearl.dylib */; };
|
||||||
|
DA79A9E3155821BB00BAA07A /* MPAppDelegate_Shared.m in Sources */ = {isa = PBXBuildFile; fileRef = DA79A9E0155821BB00BAA07A /* MPAppDelegate_Shared.m */; };
|
||||||
|
DA79A9E4155821BB00BAA07A /* MPAppDelegate_Store.m in Sources */ = {isa = PBXBuildFile; fileRef = DA79A9E2155821BB00BAA07A /* MPAppDelegate_Store.m */; };
|
||||||
|
DA79A9EC155821E500BAA07A /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DA79A9EB155821E500BAA07A /* Foundation.framework */; };
|
||||||
|
DA79AA201558221200BAA07A /* UbiquityStoreManager.h in Headers */ = {isa = PBXBuildFile; fileRef = DA79AA111558221200BAA07A /* UbiquityStoreManager.h */; };
|
||||||
|
DA79AA211558221200BAA07A /* UbiquityStoreManager.m in Sources */ = {isa = PBXBuildFile; fileRef = DA79AA121558221200BAA07A /* UbiquityStoreManager.m */; };
|
||||||
|
DA79AA2415582F3900BAA07A /* libiCloudStoreManager.a in Frameworks */ = {isa = PBXBuildFile; fileRef = DA79A9EA155821E500BAA07A /* libiCloudStoreManager.a */; };
|
||||||
DAB8D98D150374AD00CED3BC /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DAB8D98C150374AD00CED3BC /* Cocoa.framework */; };
|
DAB8D98D150374AD00CED3BC /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DAB8D98C150374AD00CED3BC /* Cocoa.framework */; };
|
||||||
DAB8D9C8150375C800CED3BC /* MasterPassword.xcdatamodeld in Sources */ = {isa = PBXBuildFile; fileRef = DAB8D9B2150375C800CED3BC /* MasterPassword.xcdatamodeld */; };
|
DAB8D9C8150375C800CED3BC /* MasterPassword.xcdatamodeld in Sources */ = {isa = PBXBuildFile; fileRef = DAB8D9B2150375C800CED3BC /* MasterPassword.xcdatamodeld */; };
|
||||||
DAB8D9C9150375C800CED3BC /* Credits.rtf in Resources */ = {isa = PBXBuildFile; fileRef = DAB8D9B5150375C800CED3BC /* Credits.rtf */; };
|
DAB8D9C9150375C800CED3BC /* Credits.rtf in Resources */ = {isa = PBXBuildFile; fileRef = DAB8D9B5150375C800CED3BC /* Credits.rtf */; };
|
||||||
@ -694,8 +700,6 @@
|
|||||||
DAB8DA2E1503972100CED3BC /* PearlStrings.m in Sources */ = {isa = PBXBuildFile; fileRef = DAB8D9FF1503972100CED3BC /* PearlStrings.m */; };
|
DAB8DA2E1503972100CED3BC /* PearlStrings.m in Sources */ = {isa = PBXBuildFile; fileRef = DAB8D9FF1503972100CED3BC /* PearlStrings.m */; };
|
||||||
DAB8DA2F1503972100CED3BC /* PearlStringUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = DAB8DA001503972100CED3BC /* PearlStringUtils.h */; };
|
DAB8DA2F1503972100CED3BC /* PearlStringUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = DAB8DA001503972100CED3BC /* PearlStringUtils.h */; };
|
||||||
DAB8DA301503972100CED3BC /* PearlStringUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = DAB8DA011503972100CED3BC /* PearlStringUtils.m */; };
|
DAB8DA301503972100CED3BC /* PearlStringUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = DAB8DA011503972100CED3BC /* PearlStringUtils.m */; };
|
||||||
DAB8DA311503972100CED3BC /* PearlWebUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = DAB8DA021503972100CED3BC /* PearlWebUtils.h */; };
|
|
||||||
DAB8DA321503972100CED3BC /* PearlWebUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = DAB8DA031503972100CED3BC /* PearlWebUtils.m */; };
|
|
||||||
DAB8DA331503972100CED3BC /* Pearl-Crypto.h in Headers */ = {isa = PBXBuildFile; fileRef = DAB8DA091503972100CED3BC /* Pearl-Crypto.h */; };
|
DAB8DA331503972100CED3BC /* Pearl-Crypto.h in Headers */ = {isa = PBXBuildFile; fileRef = DAB8DA091503972100CED3BC /* Pearl-Crypto.h */; };
|
||||||
DAB8DA341503972100CED3BC /* PearlCryptUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = DAB8DA0A1503972100CED3BC /* PearlCryptUtils.h */; };
|
DAB8DA341503972100CED3BC /* PearlCryptUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = DAB8DA0A1503972100CED3BC /* PearlCryptUtils.h */; };
|
||||||
DAB8DA351503972100CED3BC /* PearlCryptUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = DAB8DA0B1503972100CED3BC /* PearlCryptUtils.m */; };
|
DAB8DA351503972100CED3BC /* PearlCryptUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = DAB8DA0B1503972100CED3BC /* PearlCryptUtils.m */; };
|
||||||
@ -1374,6 +1378,14 @@
|
|||||||
DA600EE215057F10008E9AB6 /* tip_location_wood.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = tip_location_wood.png; sourceTree = "<group>"; };
|
DA600EE215057F10008E9AB6 /* tip_location_wood.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = tip_location_wood.png; sourceTree = "<group>"; };
|
||||||
DA600EE315057F10008E9AB6 /* tip_location_wood@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "tip_location_wood@2x.png"; sourceTree = "<group>"; };
|
DA600EE315057F10008E9AB6 /* tip_location_wood@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "tip_location_wood@2x.png"; sourceTree = "<group>"; };
|
||||||
DA60116615057FDD008E9AB6 /* iTunesArtwork-Rounded.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "iTunesArtwork-Rounded.png"; sourceTree = "<group>"; };
|
DA60116615057FDD008E9AB6 /* iTunesArtwork-Rounded.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "iTunesArtwork-Rounded.png"; sourceTree = "<group>"; };
|
||||||
|
DA79A9DF155821BB00BAA07A /* MPAppDelegate_Shared.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPAppDelegate_Shared.h; sourceTree = "<group>"; };
|
||||||
|
DA79A9E0155821BB00BAA07A /* MPAppDelegate_Shared.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPAppDelegate_Shared.m; sourceTree = "<group>"; };
|
||||||
|
DA79A9E1155821BB00BAA07A /* MPAppDelegate_Store.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPAppDelegate_Store.h; sourceTree = "<group>"; };
|
||||||
|
DA79A9E2155821BB00BAA07A /* MPAppDelegate_Store.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPAppDelegate_Store.m; sourceTree = "<group>"; };
|
||||||
|
DA79A9EA155821E500BAA07A /* libiCloudStoreManager.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libiCloudStoreManager.a; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
|
DA79A9EB155821E500BAA07A /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
|
||||||
|
DA79AA111558221200BAA07A /* UbiquityStoreManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UbiquityStoreManager.h; sourceTree = "<group>"; };
|
||||||
|
DA79AA121558221200BAA07A /* UbiquityStoreManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UbiquityStoreManager.m; sourceTree = "<group>"; };
|
||||||
DAB8D988150374AD00CED3BC /* MasterPassword.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = MasterPassword.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
DAB8D988150374AD00CED3BC /* MasterPassword.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = MasterPassword.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
DAB8D98C150374AD00CED3BC /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; };
|
DAB8D98C150374AD00CED3BC /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; };
|
||||||
DAB8D98F150374AD00CED3BC /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = System/Library/Frameworks/AppKit.framework; sourceTree = SDKROOT; };
|
DAB8D98F150374AD00CED3BC /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = System/Library/Frameworks/AppKit.framework; sourceTree = SDKROOT; };
|
||||||
@ -1426,8 +1438,6 @@
|
|||||||
DAB8D9FF1503972100CED3BC /* PearlStrings.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PearlStrings.m; sourceTree = "<group>"; };
|
DAB8D9FF1503972100CED3BC /* PearlStrings.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PearlStrings.m; sourceTree = "<group>"; };
|
||||||
DAB8DA001503972100CED3BC /* PearlStringUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PearlStringUtils.h; sourceTree = "<group>"; };
|
DAB8DA001503972100CED3BC /* PearlStringUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PearlStringUtils.h; sourceTree = "<group>"; };
|
||||||
DAB8DA011503972100CED3BC /* PearlStringUtils.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PearlStringUtils.m; sourceTree = "<group>"; };
|
DAB8DA011503972100CED3BC /* PearlStringUtils.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PearlStringUtils.m; sourceTree = "<group>"; };
|
||||||
DAB8DA021503972100CED3BC /* PearlWebUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PearlWebUtils.h; sourceTree = "<group>"; };
|
|
||||||
DAB8DA031503972100CED3BC /* PearlWebUtils.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PearlWebUtils.m; sourceTree = "<group>"; };
|
|
||||||
DAB8DA041503972100CED3BC /* README */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = README; sourceTree = "<group>"; };
|
DAB8DA041503972100CED3BC /* README */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = README; sourceTree = "<group>"; };
|
||||||
DAB8DA071503972100CED3BC /* en */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Pearl.strings; sourceTree = "<group>"; };
|
DAB8DA071503972100CED3BC /* en */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Pearl.strings; sourceTree = "<group>"; };
|
||||||
DAB8DA091503972100CED3BC /* Pearl-Crypto.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "Pearl-Crypto.h"; sourceTree = "<group>"; };
|
DAB8DA091503972100CED3BC /* Pearl-Crypto.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "Pearl-Crypto.h"; sourceTree = "<group>"; };
|
||||||
@ -2219,8 +2229,8 @@
|
|||||||
DAF56D4A1503C74200996D85 /* info.pem */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = info.pem; sourceTree = "<group>"; };
|
DAF56D4A1503C74200996D85 /* info.pem */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = info.pem; sourceTree = "<group>"; };
|
||||||
DAF56D4B1503C74200996D85 /* infokey.pem */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = infokey.pem; sourceTree = "<group>"; };
|
DAF56D4B1503C74200996D85 /* infokey.pem */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = infokey.pem; sourceTree = "<group>"; };
|
||||||
DAF56D4C1503C74200996D85 /* Makefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = "<group>"; };
|
DAF56D4C1503C74200996D85 /* Makefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = "<group>"; };
|
||||||
DAF56D4E1503C74200996D85 /* a1 */ = {isa = PBXFileReference; lastKnownFileType = file; path = a1; sourceTree = "<group>"; };
|
DAF56D4E1503C74200996D85 /* a1 */ = {isa = PBXFileReference; lastKnownFileType = text; path = a1; sourceTree = "<group>"; };
|
||||||
DAF56D4F1503C74200996D85 /* a2 */ = {isa = PBXFileReference; lastKnownFileType = file; path = a2; sourceTree = "<group>"; };
|
DAF56D4F1503C74200996D85 /* a2 */ = {isa = PBXFileReference; lastKnownFileType = text; path = a2; sourceTree = "<group>"; };
|
||||||
DAF56D501503C74200996D85 /* cert.p7c */ = {isa = PBXFileReference; lastKnownFileType = file; path = cert.p7c; sourceTree = "<group>"; };
|
DAF56D501503C74200996D85 /* cert.p7c */ = {isa = PBXFileReference; lastKnownFileType = file; path = cert.p7c; sourceTree = "<group>"; };
|
||||||
DAF56D511503C74200996D85 /* smime.p7m */ = {isa = PBXFileReference; lastKnownFileType = file; path = smime.p7m; sourceTree = "<group>"; };
|
DAF56D511503C74200996D85 /* smime.p7m */ = {isa = PBXFileReference; lastKnownFileType = file; path = smime.p7m; sourceTree = "<group>"; };
|
||||||
DAF56D521503C74200996D85 /* smime.p7s */ = {isa = PBXFileReference; lastKnownFileType = file; path = smime.p7s; sourceTree = "<group>"; };
|
DAF56D521503C74200996D85 /* smime.p7s */ = {isa = PBXFileReference; lastKnownFileType = file; path = smime.p7s; sourceTree = "<group>"; };
|
||||||
@ -2525,10 +2535,19 @@
|
|||||||
/* End PBXFileReference section */
|
/* End PBXFileReference section */
|
||||||
|
|
||||||
/* Begin PBXFrameworksBuildPhase section */
|
/* Begin PBXFrameworksBuildPhase section */
|
||||||
|
DA79A9E7155821E500BAA07A /* Frameworks */ = {
|
||||||
|
isa = PBXFrameworksBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
DA79A9EC155821E500BAA07A /* Foundation.framework in Frameworks */,
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
};
|
||||||
DAB8D985150374AD00CED3BC /* Frameworks */ = {
|
DAB8D985150374AD00CED3BC /* Frameworks */ = {
|
||||||
isa = PBXFrameworksBuildPhase;
|
isa = PBXFrameworksBuildPhase;
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
files = (
|
files = (
|
||||||
|
DA79AA2415582F3900BAA07A /* libiCloudStoreManager.a in Frameworks */,
|
||||||
DA44255715546C580052177D /* Carbon.framework in Frameworks */,
|
DA44255715546C580052177D /* Carbon.framework in Frameworks */,
|
||||||
DADEA5D51503EEDF00FD084E /* Security.framework in Frameworks */,
|
DADEA5D51503EEDF00FD084E /* Security.framework in Frameworks */,
|
||||||
DAFE4A6415039CDC003ABA7C /* Pearl.dylib in Frameworks */,
|
DAFE4A6415039CDC003ABA7C /* Pearl.dylib in Frameworks */,
|
||||||
@ -3260,6 +3279,16 @@
|
|||||||
path = Tooltips;
|
path = Tooltips;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
};
|
};
|
||||||
|
DA79A9F61558221200BAA07A /* iCloudStoreManager */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
DA79AA111558221200BAA07A /* UbiquityStoreManager.h */,
|
||||||
|
DA79AA121558221200BAA07A /* UbiquityStoreManager.m */,
|
||||||
|
);
|
||||||
|
name = iCloudStoreManager;
|
||||||
|
path = External/iCloudStoreManager/iCloudStoreManager;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
DAB8D97D150374AC00CED3BC = {
|
DAB8D97D150374AC00CED3BC = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
@ -3268,6 +3297,7 @@
|
|||||||
DAB8D9DA1503940100CED3BC /* Pearl */,
|
DAB8D9DA1503940100CED3BC /* Pearl */,
|
||||||
DAF56A071503C64400996D85 /* scrypt */,
|
DAF56A071503C64400996D85 /* scrypt */,
|
||||||
DAF571EE1503C75C00996D85 /* openssl */,
|
DAF571EE1503C75C00996D85 /* openssl */,
|
||||||
|
DA79A9F61558221200BAA07A /* iCloudStoreManager */,
|
||||||
DAB8D98B150374AD00CED3BC /* Frameworks */,
|
DAB8D98B150374AD00CED3BC /* Frameworks */,
|
||||||
DAB8D989150374AD00CED3BC /* Products */,
|
DAB8D989150374AD00CED3BC /* Products */,
|
||||||
);
|
);
|
||||||
@ -3278,6 +3308,7 @@
|
|||||||
children = (
|
children = (
|
||||||
DAB8D988150374AD00CED3BC /* MasterPassword.app */,
|
DAB8D988150374AD00CED3BC /* MasterPassword.app */,
|
||||||
DAB8D9D81503940100CED3BC /* Pearl.dylib */,
|
DAB8D9D81503940100CED3BC /* Pearl.dylib */,
|
||||||
|
DA79A9EA155821E500BAA07A /* libiCloudStoreManager.a */,
|
||||||
);
|
);
|
||||||
name = Products;
|
name = Products;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
@ -3289,6 +3320,7 @@
|
|||||||
DA44255615546C570052177D /* Carbon.framework */,
|
DA44255615546C570052177D /* Carbon.framework */,
|
||||||
DADEA5D31503EEA700FD084E /* Security.framework */,
|
DADEA5D31503EEA700FD084E /* Security.framework */,
|
||||||
DAB8D98C150374AD00CED3BC /* Cocoa.framework */,
|
DAB8D98C150374AD00CED3BC /* Cocoa.framework */,
|
||||||
|
DA79A9EB155821E500BAA07A /* Foundation.framework */,
|
||||||
DAB8D98E150374AD00CED3BC /* Other Frameworks */,
|
DAB8D98E150374AD00CED3BC /* Other Frameworks */,
|
||||||
);
|
);
|
||||||
name = Frameworks;
|
name = Frameworks;
|
||||||
@ -3312,6 +3344,10 @@
|
|||||||
DAB8D9B4150375C800CED3BC /* Mac */,
|
DAB8D9B4150375C800CED3BC /* Mac */,
|
||||||
DA600C2C150565FC008E9AB6 /* MPAppDelegate_Key.h */,
|
DA600C2C150565FC008E9AB6 /* MPAppDelegate_Key.h */,
|
||||||
DA600C2B150565FC008E9AB6 /* MPAppDelegate_Key.m */,
|
DA600C2B150565FC008E9AB6 /* MPAppDelegate_Key.m */,
|
||||||
|
DA79A9DF155821BB00BAA07A /* MPAppDelegate_Shared.h */,
|
||||||
|
DA79A9E0155821BB00BAA07A /* MPAppDelegate_Shared.m */,
|
||||||
|
DA79A9E1155821BB00BAA07A /* MPAppDelegate_Store.h */,
|
||||||
|
DA79A9E2155821BB00BAA07A /* MPAppDelegate_Store.m */,
|
||||||
DA600C29150565FC008E9AB6 /* MPConfig.h */,
|
DA600C29150565FC008E9AB6 /* MPConfig.h */,
|
||||||
DA600C2A150565FC008E9AB6 /* MPConfig.m */,
|
DA600C2A150565FC008E9AB6 /* MPConfig.m */,
|
||||||
DAB8D9C0150375C800CED3BC /* MPElementStoredEntity.m */,
|
DAB8D9C0150375C800CED3BC /* MPElementStoredEntity.m */,
|
||||||
@ -3401,8 +3437,6 @@
|
|||||||
DAB8D9FF1503972100CED3BC /* PearlStrings.m */,
|
DAB8D9FF1503972100CED3BC /* PearlStrings.m */,
|
||||||
DAB8DA001503972100CED3BC /* PearlStringUtils.h */,
|
DAB8DA001503972100CED3BC /* PearlStringUtils.h */,
|
||||||
DAB8DA011503972100CED3BC /* PearlStringUtils.m */,
|
DAB8DA011503972100CED3BC /* PearlStringUtils.m */,
|
||||||
DAB8DA021503972100CED3BC /* PearlWebUtils.h */,
|
|
||||||
DAB8DA031503972100CED3BC /* PearlWebUtils.m */,
|
|
||||||
DAB8DA041503972100CED3BC /* README */,
|
DAB8DA041503972100CED3BC /* README */,
|
||||||
DAB8DA051503972100CED3BC /* Resources */,
|
DAB8DA051503972100CED3BC /* Resources */,
|
||||||
);
|
);
|
||||||
@ -5159,6 +5193,14 @@
|
|||||||
/* End PBXGroup section */
|
/* End PBXGroup section */
|
||||||
|
|
||||||
/* Begin PBXHeadersBuildPhase section */
|
/* Begin PBXHeadersBuildPhase section */
|
||||||
|
DA79A9E8155821E500BAA07A /* Headers */ = {
|
||||||
|
isa = PBXHeadersBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
DA79AA201558221200BAA07A /* UbiquityStoreManager.h in Headers */,
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
};
|
||||||
DAB8D9D61503940100CED3BC /* Headers */ = {
|
DAB8D9D61503940100CED3BC /* Headers */ = {
|
||||||
isa = PBXHeadersBuildPhase;
|
isa = PBXHeadersBuildPhase;
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
@ -5178,7 +5220,6 @@
|
|||||||
DAB8DA2C1503972100CED3BC /* PearlResettable.h in Headers */,
|
DAB8DA2C1503972100CED3BC /* PearlResettable.h in Headers */,
|
||||||
DAB8DA2D1503972100CED3BC /* PearlStrings.h in Headers */,
|
DAB8DA2D1503972100CED3BC /* PearlStrings.h in Headers */,
|
||||||
DAB8DA2F1503972100CED3BC /* PearlStringUtils.h in Headers */,
|
DAB8DA2F1503972100CED3BC /* PearlStringUtils.h in Headers */,
|
||||||
DAB8DA311503972100CED3BC /* PearlWebUtils.h in Headers */,
|
|
||||||
DAB8DA331503972100CED3BC /* Pearl-Crypto.h in Headers */,
|
DAB8DA331503972100CED3BC /* Pearl-Crypto.h in Headers */,
|
||||||
DAB8DA341503972100CED3BC /* PearlCryptUtils.h in Headers */,
|
DAB8DA341503972100CED3BC /* PearlCryptUtils.h in Headers */,
|
||||||
DAB8DA361503972100CED3BC /* PearlKeyChain.h in Headers */,
|
DAB8DA361503972100CED3BC /* PearlKeyChain.h in Headers */,
|
||||||
@ -5190,6 +5231,23 @@
|
|||||||
/* End PBXHeadersBuildPhase section */
|
/* End PBXHeadersBuildPhase section */
|
||||||
|
|
||||||
/* Begin PBXNativeTarget section */
|
/* Begin PBXNativeTarget section */
|
||||||
|
DA79A9E9155821E500BAA07A /* iCloudStoreManager */ = {
|
||||||
|
isa = PBXNativeTarget;
|
||||||
|
buildConfigurationList = DA79A9F3155821E500BAA07A /* Build configuration list for PBXNativeTarget "iCloudStoreManager" */;
|
||||||
|
buildPhases = (
|
||||||
|
DA79A9E6155821E500BAA07A /* Sources */,
|
||||||
|
DA79A9E7155821E500BAA07A /* Frameworks */,
|
||||||
|
DA79A9E8155821E500BAA07A /* Headers */,
|
||||||
|
);
|
||||||
|
buildRules = (
|
||||||
|
);
|
||||||
|
dependencies = (
|
||||||
|
);
|
||||||
|
name = iCloudStoreManager;
|
||||||
|
productName = iCloudStoreManager;
|
||||||
|
productReference = DA79A9EA155821E500BAA07A /* libiCloudStoreManager.a */;
|
||||||
|
productType = "com.apple.product-type.library.static";
|
||||||
|
};
|
||||||
DAB8D987150374AD00CED3BC /* MasterPassword */ = {
|
DAB8D987150374AD00CED3BC /* MasterPassword */ = {
|
||||||
isa = PBXNativeTarget;
|
isa = PBXNativeTarget;
|
||||||
buildConfigurationList = DAB8D9A9150374AD00CED3BC /* Build configuration list for PBXNativeTarget "MasterPassword" */;
|
buildConfigurationList = DAB8D9A9150374AD00CED3BC /* Build configuration list for PBXNativeTarget "MasterPassword" */;
|
||||||
@ -5250,6 +5308,7 @@
|
|||||||
targets = (
|
targets = (
|
||||||
DAB8D987150374AD00CED3BC /* MasterPassword */,
|
DAB8D987150374AD00CED3BC /* MasterPassword */,
|
||||||
DAB8D9D71503940100CED3BC /* Pearl */,
|
DAB8D9D71503940100CED3BC /* Pearl */,
|
||||||
|
DA79A9E9155821E500BAA07A /* iCloudStoreManager */,
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
/* End PBXProject section */
|
/* End PBXProject section */
|
||||||
@ -5927,6 +5986,14 @@
|
|||||||
/* End PBXShellScriptBuildPhase section */
|
/* End PBXShellScriptBuildPhase section */
|
||||||
|
|
||||||
/* Begin PBXSourcesBuildPhase section */
|
/* Begin PBXSourcesBuildPhase section */
|
||||||
|
DA79A9E6155821E500BAA07A /* Sources */ = {
|
||||||
|
isa = PBXSourcesBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
DA79AA211558221200BAA07A /* UbiquityStoreManager.m in Sources */,
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
};
|
||||||
DAB8D984150374AD00CED3BC /* Sources */ = {
|
DAB8D984150374AD00CED3BC /* Sources */ = {
|
||||||
isa = PBXSourcesBuildPhase;
|
isa = PBXSourcesBuildPhase;
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
@ -5941,6 +6008,8 @@
|
|||||||
DA600BEB150420AC008E9AB6 /* MPPasswordWindowController.m in Sources */,
|
DA600BEB150420AC008E9AB6 /* MPPasswordWindowController.m in Sources */,
|
||||||
DA600C2D150565FC008E9AB6 /* MPConfig.m in Sources */,
|
DA600C2D150565FC008E9AB6 /* MPConfig.m in Sources */,
|
||||||
DA600C2E150565FC008E9AB6 /* MPAppDelegate_Key.m in Sources */,
|
DA600C2E150565FC008E9AB6 /* MPAppDelegate_Key.m in Sources */,
|
||||||
|
DA79A9E3155821BB00BAA07A /* MPAppDelegate_Shared.m in Sources */,
|
||||||
|
DA79A9E4155821BB00BAA07A /* MPAppDelegate_Store.m in Sources */,
|
||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
};
|
};
|
||||||
@ -5961,7 +6030,6 @@
|
|||||||
DAB8DA2B1503972100CED3BC /* PearlObjectUtils.m in Sources */,
|
DAB8DA2B1503972100CED3BC /* PearlObjectUtils.m in Sources */,
|
||||||
DAB8DA2E1503972100CED3BC /* PearlStrings.m in Sources */,
|
DAB8DA2E1503972100CED3BC /* PearlStrings.m in Sources */,
|
||||||
DAB8DA301503972100CED3BC /* PearlStringUtils.m in Sources */,
|
DAB8DA301503972100CED3BC /* PearlStringUtils.m in Sources */,
|
||||||
DAB8DA321503972100CED3BC /* PearlWebUtils.m in Sources */,
|
|
||||||
DAB8DA351503972100CED3BC /* PearlCryptUtils.m in Sources */,
|
DAB8DA351503972100CED3BC /* PearlCryptUtils.m in Sources */,
|
||||||
DAB8DA371503972100CED3BC /* PearlKeyChain.m in Sources */,
|
DAB8DA371503972100CED3BC /* PearlKeyChain.m in Sources */,
|
||||||
DAB8DA391503972100CED3BC /* PearlRSAKey.m in Sources */,
|
DAB8DA391503972100CED3BC /* PearlRSAKey.m in Sources */,
|
||||||
@ -6007,12 +6075,25 @@
|
|||||||
/* End PBXVariantGroup section */
|
/* End PBXVariantGroup section */
|
||||||
|
|
||||||
/* Begin XCBuildConfiguration section */
|
/* Begin XCBuildConfiguration section */
|
||||||
|
DA79A9F4155821E500BAA07A /* Debug */ = {
|
||||||
|
isa = XCBuildConfiguration;
|
||||||
|
buildSettings = {
|
||||||
|
};
|
||||||
|
name = Debug;
|
||||||
|
};
|
||||||
|
DA79A9F5155821E500BAA07A /* Release */ = {
|
||||||
|
isa = XCBuildConfiguration;
|
||||||
|
buildSettings = {
|
||||||
|
};
|
||||||
|
name = Release;
|
||||||
|
};
|
||||||
DAB8D9A7150374AD00CED3BC /* Debug */ = {
|
DAB8D9A7150374AD00CED3BC /* Debug */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||||
ARCHS = "$(ARCHS_STANDARD_64_BIT)";
|
ARCHS = "$(ARCHS_STANDARD_64_BIT)";
|
||||||
CLANG_ENABLE_OBJC_ARC = YES;
|
CLANG_ENABLE_OBJC_ARC = YES;
|
||||||
|
CLANG_WARN_OBJCPP_ARC_ABI = YES;
|
||||||
COPY_PHASE_STRIP = NO;
|
COPY_PHASE_STRIP = NO;
|
||||||
GCC_C_LANGUAGE_STANDARD = gnu99;
|
GCC_C_LANGUAGE_STANDARD = gnu99;
|
||||||
GCC_DYNAMIC_NO_PIC = NO;
|
GCC_DYNAMIC_NO_PIC = NO;
|
||||||
@ -6044,6 +6125,7 @@
|
|||||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||||
ARCHS = "$(ARCHS_STANDARD_64_BIT)";
|
ARCHS = "$(ARCHS_STANDARD_64_BIT)";
|
||||||
CLANG_ENABLE_OBJC_ARC = YES;
|
CLANG_ENABLE_OBJC_ARC = YES;
|
||||||
|
CLANG_WARN_OBJCPP_ARC_ABI = YES;
|
||||||
COPY_PHASE_STRIP = YES;
|
COPY_PHASE_STRIP = YES;
|
||||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||||
GCC_C_LANGUAGE_STANDARD = gnu99;
|
GCC_C_LANGUAGE_STANDARD = gnu99;
|
||||||
@ -6090,7 +6172,6 @@
|
|||||||
DAB8D9E11503940100CED3BC /* Debug */ = {
|
DAB8D9E11503940100CED3BC /* Debug */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
CLANG_ENABLE_OBJC_ARC = NO;
|
|
||||||
DYLIB_COMPATIBILITY_VERSION = 1;
|
DYLIB_COMPATIBILITY_VERSION = 1;
|
||||||
DYLIB_CURRENT_VERSION = 1;
|
DYLIB_CURRENT_VERSION = 1;
|
||||||
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
||||||
@ -6106,7 +6187,6 @@
|
|||||||
DAB8D9E21503940100CED3BC /* Release */ = {
|
DAB8D9E21503940100CED3BC /* Release */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
CLANG_ENABLE_OBJC_ARC = NO;
|
|
||||||
DYLIB_COMPATIBILITY_VERSION = 1;
|
DYLIB_COMPATIBILITY_VERSION = 1;
|
||||||
DYLIB_CURRENT_VERSION = 1;
|
DYLIB_CURRENT_VERSION = 1;
|
||||||
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
||||||
@ -6122,6 +6202,14 @@
|
|||||||
/* End XCBuildConfiguration section */
|
/* End XCBuildConfiguration section */
|
||||||
|
|
||||||
/* Begin XCConfigurationList section */
|
/* Begin XCConfigurationList section */
|
||||||
|
DA79A9F3155821E500BAA07A /* Build configuration list for PBXNativeTarget "iCloudStoreManager" */ = {
|
||||||
|
isa = XCConfigurationList;
|
||||||
|
buildConfigurations = (
|
||||||
|
DA79A9F4155821E500BAA07A /* Debug */,
|
||||||
|
DA79A9F5155821E500BAA07A /* Release */,
|
||||||
|
);
|
||||||
|
defaultConfigurationIsVisible = 0;
|
||||||
|
};
|
||||||
DAB8D982150374AC00CED3BC /* Build configuration list for PBXProject "MasterPassword-Mac" */ = {
|
DAB8D982150374AC00CED3BC /* Build configuration list for PBXProject "MasterPassword-Mac" */ = {
|
||||||
isa = XCConfigurationList;
|
isa = XCConfigurationList;
|
||||||
buildConfigurations = (
|
buildConfigurations = (
|
||||||
|
@ -8,7 +8,12 @@
|
|||||||
|
|
||||||
/* Begin PBXBuildFile section */
|
/* Begin PBXBuildFile section */
|
||||||
DA04E33E14B1E70400ECA4F3 /* MobileCoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DA04E33D14B1E70400ECA4F3 /* MobileCoreServices.framework */; };
|
DA04E33E14B1E70400ECA4F3 /* MobileCoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DA04E33D14B1E70400ECA4F3 /* MobileCoreServices.framework */; };
|
||||||
DA1A144414E4950C00BCFFBE /* libscryptenc.a in Frameworks */ = {isa = PBXBuildFile; fileRef = DA1A143814E494DE00BCFFBE /* libscryptenc.a */; };
|
DA4425CC1557BED40052177D /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DA5BFA4A147E415C00F98B1E /* Foundation.framework */; };
|
||||||
|
DA4426001557BF260052177D /* UbiquityStoreManager.h in Headers */ = {isa = PBXBuildFile; fileRef = DA4425F11557BF260052177D /* UbiquityStoreManager.h */; };
|
||||||
|
DA4426011557BF260052177D /* UbiquityStoreManager.m in Sources */ = {isa = PBXBuildFile; fileRef = DA4425F21557BF260052177D /* UbiquityStoreManager.m */; };
|
||||||
|
DA4426081557C1990052177D /* MPAppDelegate_Shared.m in Sources */ = {isa = PBXBuildFile; fileRef = DA4426051557C1990052177D /* MPAppDelegate_Shared.m */; };
|
||||||
|
DA4426091557C1990052177D /* MPAppDelegate_Store.m in Sources */ = {isa = PBXBuildFile; fileRef = DA4426071557C1990052177D /* MPAppDelegate_Store.m */; };
|
||||||
|
DA44260A1557D9E40052177D /* libiCloudStoreManager.a in Frameworks */ = {isa = PBXBuildFile; fileRef = DA4425CB1557BED40052177D /* libiCloudStoreManager.a */; };
|
||||||
DA5BFA49147E415C00F98B1E /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DA5BFA48147E415C00F98B1E /* UIKit.framework */; };
|
DA5BFA49147E415C00F98B1E /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DA5BFA48147E415C00F98B1E /* UIKit.framework */; };
|
||||||
DA5BFA4B147E415C00F98B1E /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DA5BFA4A147E415C00F98B1E /* Foundation.framework */; };
|
DA5BFA4B147E415C00F98B1E /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DA5BFA4A147E415C00F98B1E /* Foundation.framework */; };
|
||||||
DA5BFA4D147E415C00F98B1E /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DA5BFA4C147E415C00F98B1E /* CoreGraphics.framework */; };
|
DA5BFA4D147E415C00F98B1E /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DA5BFA4C147E415C00F98B1E /* CoreGraphics.framework */; };
|
||||||
@ -17,6 +22,9 @@
|
|||||||
DA600C2815056428008E9AB6 /* MPConfig.m in Sources */ = {isa = PBXBuildFile; fileRef = DA600C2715056427008E9AB6 /* MPConfig.m */; };
|
DA600C2815056428008E9AB6 /* MPConfig.m in Sources */ = {isa = PBXBuildFile; fileRef = DA600C2715056427008E9AB6 /* MPConfig.m */; };
|
||||||
DA672D2F14F92C6B004A189C /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = DA672D2E14F92C6B004A189C /* libz.dylib */; };
|
DA672D2F14F92C6B004A189C /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = DA672D2E14F92C6B004A189C /* libz.dylib */; };
|
||||||
DA672D3014F9413D004A189C /* libPearl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = DAC77CAD148291A600BCF976 /* libPearl.a */; };
|
DA672D3014F9413D004A189C /* libPearl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = DAC77CAD148291A600BCF976 /* libPearl.a */; };
|
||||||
|
DA79A9B91557DB4C00BAA07A /* libjrswizzle.a in Frameworks */ = {isa = PBXBuildFile; fileRef = DAC6326C148680650075AEA5 /* libjrswizzle.a */; };
|
||||||
|
DA79A9BA1557DB4C00BAA07A /* libuicolor-utilities.a in Frameworks */ = {isa = PBXBuildFile; fileRef = DAC6325D1486805C0075AEA5 /* libuicolor-utilities.a */; };
|
||||||
|
DA79A9BC1557DB6F00BAA07A /* libscryptenc-ios.a in Frameworks */ = {isa = PBXBuildFile; fileRef = DA79A9BB1557DB6F00BAA07A /* libscryptenc-ios.a */; };
|
||||||
DA95D59D14DF063C008D1B94 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DA5BFA4A147E415C00F98B1E /* Foundation.framework */; };
|
DA95D59D14DF063C008D1B94 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DA5BFA4A147E415C00F98B1E /* Foundation.framework */; };
|
||||||
DA95D5CF14DF0691008D1B94 /* IASKAppSettingsViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = DA95D5A814DF0691008D1B94 /* IASKAppSettingsViewController.h */; };
|
DA95D5CF14DF0691008D1B94 /* IASKAppSettingsViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = DA95D5A814DF0691008D1B94 /* IASKAppSettingsViewController.h */; };
|
||||||
DA95D5D014DF0691008D1B94 /* IASKAppSettingsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DA95D5A914DF0691008D1B94 /* IASKAppSettingsViewController.m */; };
|
DA95D5D014DF0691008D1B94 /* IASKAppSettingsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DA95D5A914DF0691008D1B94 /* IASKAppSettingsViewController.m */; };
|
||||||
@ -714,8 +722,6 @@
|
|||||||
DABB981615100B4000B05417 /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DABB981515100B4000B05417 /* SystemConfiguration.framework */; };
|
DABB981615100B4000B05417 /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DABB981515100B4000B05417 /* SystemConfiguration.framework */; };
|
||||||
DAC6325E1486805C0075AEA5 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DA5BFA4A147E415C00F98B1E /* Foundation.framework */; };
|
DAC6325E1486805C0075AEA5 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DA5BFA4A147E415C00F98B1E /* Foundation.framework */; };
|
||||||
DAC6326D148680650075AEA5 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DA5BFA4A147E415C00F98B1E /* Foundation.framework */; };
|
DAC6326D148680650075AEA5 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DA5BFA4A147E415C00F98B1E /* Foundation.framework */; };
|
||||||
DAC63277148680700075AEA5 /* libuicolor-utilities.a in Frameworks */ = {isa = PBXBuildFile; fileRef = DAC6325D1486805C0075AEA5 /* libuicolor-utilities.a */; };
|
|
||||||
DAC63278148680740075AEA5 /* libjrswizzle.a in Frameworks */ = {isa = PBXBuildFile; fileRef = DAC6326C148680650075AEA5 /* libjrswizzle.a */; };
|
|
||||||
DAC6327B1486809A0075AEA5 /* JRSwizzle.h in Headers */ = {isa = PBXBuildFile; fileRef = DAC632791486809A0075AEA5 /* JRSwizzle.h */; };
|
DAC6327B1486809A0075AEA5 /* JRSwizzle.h in Headers */ = {isa = PBXBuildFile; fileRef = DAC632791486809A0075AEA5 /* JRSwizzle.h */; };
|
||||||
DAC6327C1486809A0075AEA5 /* JRSwizzle.m in Sources */ = {isa = PBXBuildFile; fileRef = DAC6327A1486809A0075AEA5 /* JRSwizzle.m */; };
|
DAC6327C1486809A0075AEA5 /* JRSwizzle.m in Sources */ = {isa = PBXBuildFile; fileRef = DAC6327A1486809A0075AEA5 /* JRSwizzle.m */; };
|
||||||
DAC632891486D9690075AEA5 /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DAC632871486D95D0075AEA5 /* Security.framework */; };
|
DAC632891486D9690075AEA5 /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DAC632871486D95D0075AEA5 /* Security.framework */; };
|
||||||
@ -815,27 +821,34 @@
|
|||||||
/* End PBXBuildFile section */
|
/* End PBXBuildFile section */
|
||||||
|
|
||||||
/* Begin PBXContainerItemProxy section */
|
/* Begin PBXContainerItemProxy section */
|
||||||
DA1A143714E494DE00BCFFBE /* PBXContainerItemProxy */ = {
|
DA79A9CD1557DDC800BAA07A /* PBXContainerItemProxy */ = {
|
||||||
isa = PBXContainerItemProxy;
|
isa = PBXContainerItemProxy;
|
||||||
containerPortal = DA1A142714E494DA00BCFFBE /* scrypt.xcodeproj */;
|
containerPortal = DA79A9BD1557DDC700BAA07A /* scrypt.xcodeproj */;
|
||||||
proxyType = 2;
|
proxyType = 2;
|
||||||
remoteGlobalIDString = D2AAC07E0554694100DB518D;
|
remoteGlobalIDString = D2AAC07E0554694100DB518D;
|
||||||
remoteInfo = scryptenc;
|
remoteInfo = scryptenc;
|
||||||
};
|
};
|
||||||
DA1A143914E494DE00BCFFBE /* PBXContainerItemProxy */ = {
|
DA79A9CF1557DDC800BAA07A /* PBXContainerItemProxy */ = {
|
||||||
isa = PBXContainerItemProxy;
|
isa = PBXContainerItemProxy;
|
||||||
containerPortal = DA1A142714E494DA00BCFFBE /* scrypt.xcodeproj */;
|
containerPortal = DA79A9BD1557DDC700BAA07A /* scrypt.xcodeproj */;
|
||||||
proxyType = 2;
|
proxyType = 2;
|
||||||
remoteGlobalIDString = A0511C5A127770FD00DE46C4;
|
remoteGlobalIDString = A0511C5A127770FD00DE46C4;
|
||||||
remoteInfo = scryptcrypto;
|
remoteInfo = scryptcrypto;
|
||||||
};
|
};
|
||||||
DA1A143B14E494DE00BCFFBE /* PBXContainerItemProxy */ = {
|
DA79A9D11557DDC800BAA07A /* PBXContainerItemProxy */ = {
|
||||||
isa = PBXContainerItemProxy;
|
isa = PBXContainerItemProxy;
|
||||||
containerPortal = DA1A142714E494DA00BCFFBE /* scrypt.xcodeproj */;
|
containerPortal = DA79A9BD1557DDC700BAA07A /* scrypt.xcodeproj */;
|
||||||
proxyType = 2;
|
proxyType = 2;
|
||||||
remoteGlobalIDString = DA67FE5D14E4834300DB7CC9;
|
remoteGlobalIDString = DA67FE5D14E4834300DB7CC9;
|
||||||
remoteInfo = util;
|
remoteInfo = util;
|
||||||
};
|
};
|
||||||
|
DA79A9D91557DDEB00BAA07A /* PBXContainerItemProxy */ = {
|
||||||
|
isa = PBXContainerItemProxy;
|
||||||
|
containerPortal = DA79A9BD1557DDC700BAA07A /* scrypt.xcodeproj */;
|
||||||
|
proxyType = 1;
|
||||||
|
remoteGlobalIDString = A0511DED127788EC00DE46C4;
|
||||||
|
remoteInfo = "Makefile-scrypt";
|
||||||
|
};
|
||||||
DAC63283148681200075AEA5 /* PBXContainerItemProxy */ = {
|
DAC63283148681200075AEA5 /* PBXContainerItemProxy */ = {
|
||||||
isa = PBXContainerItemProxy;
|
isa = PBXContainerItemProxy;
|
||||||
containerPortal = DA5BFA3B147E415C00F98B1E /* Project object */;
|
containerPortal = DA5BFA3B147E415C00F98B1E /* Project object */;
|
||||||
@ -854,7 +867,13 @@
|
|||||||
|
|
||||||
/* Begin PBXFileReference section */
|
/* Begin PBXFileReference section */
|
||||||
DA04E33D14B1E70400ECA4F3 /* MobileCoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MobileCoreServices.framework; path = System/Library/Frameworks/MobileCoreServices.framework; sourceTree = SDKROOT; };
|
DA04E33D14B1E70400ECA4F3 /* MobileCoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MobileCoreServices.framework; path = System/Library/Frameworks/MobileCoreServices.framework; sourceTree = SDKROOT; };
|
||||||
DA1A142714E494DA00BCFFBE /* scrypt.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = scrypt.xcodeproj; path = External/Pearl/External/iOSPorts/ports/security/scrypt/scrypt.xcodeproj; sourceTree = "<group>"; };
|
DA4425CB1557BED40052177D /* libiCloudStoreManager.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libiCloudStoreManager.a; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
|
DA4425F11557BF260052177D /* UbiquityStoreManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UbiquityStoreManager.h; sourceTree = "<group>"; };
|
||||||
|
DA4425F21557BF260052177D /* UbiquityStoreManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UbiquityStoreManager.m; sourceTree = "<group>"; };
|
||||||
|
DA4426041557C1990052177D /* MPAppDelegate_Shared.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPAppDelegate_Shared.h; sourceTree = "<group>"; };
|
||||||
|
DA4426051557C1990052177D /* MPAppDelegate_Shared.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPAppDelegate_Shared.m; sourceTree = "<group>"; };
|
||||||
|
DA4426061557C1990052177D /* MPAppDelegate_Store.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPAppDelegate_Store.h; sourceTree = "<group>"; };
|
||||||
|
DA4426071557C1990052177D /* MPAppDelegate_Store.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPAppDelegate_Store.m; sourceTree = "<group>"; };
|
||||||
DA5BFA44147E415C00F98B1E /* MasterPassword.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = MasterPassword.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
DA5BFA44147E415C00F98B1E /* MasterPassword.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = MasterPassword.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
DA5BFA48147E415C00F98B1E /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };
|
DA5BFA48147E415C00F98B1E /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };
|
||||||
DA5BFA4A147E415C00F98B1E /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
|
DA5BFA4A147E415C00F98B1E /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
|
||||||
@ -865,6 +884,8 @@
|
|||||||
DA600C2615056427008E9AB6 /* MPConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MPConfig.h; path = MasterPassword/MPConfig.h; sourceTree = SOURCE_ROOT; };
|
DA600C2615056427008E9AB6 /* MPConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MPConfig.h; path = MasterPassword/MPConfig.h; sourceTree = SOURCE_ROOT; };
|
||||||
DA600C2715056427008E9AB6 /* MPConfig.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = MPConfig.m; path = MasterPassword/MPConfig.m; sourceTree = SOURCE_ROOT; };
|
DA600C2715056427008E9AB6 /* MPConfig.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = MPConfig.m; path = MasterPassword/MPConfig.m; sourceTree = SOURCE_ROOT; };
|
||||||
DA672D2E14F92C6B004A189C /* libz.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libz.dylib; path = usr/lib/libz.dylib; sourceTree = SDKROOT; };
|
DA672D2E14F92C6B004A189C /* libz.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libz.dylib; path = usr/lib/libz.dylib; sourceTree = SDKROOT; };
|
||||||
|
DA79A9BB1557DB6F00BAA07A /* libscryptenc-ios.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = "libscryptenc-ios.a"; sourceTree = "<group>"; };
|
||||||
|
DA79A9BD1557DDC700BAA07A /* scrypt.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = scrypt.xcodeproj; path = External/Pearl/External/iOSPorts/ports/security/scrypt/scrypt.xcodeproj; sourceTree = "<group>"; };
|
||||||
DA95D59C14DF063C008D1B94 /* libInAppSettingsKit.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libInAppSettingsKit.a; sourceTree = BUILT_PRODUCTS_DIR; };
|
DA95D59C14DF063C008D1B94 /* libInAppSettingsKit.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libInAppSettingsKit.a; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
DA95D5A814DF0691008D1B94 /* IASKAppSettingsViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IASKAppSettingsViewController.h; sourceTree = "<group>"; };
|
DA95D5A814DF0691008D1B94 /* IASKAppSettingsViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IASKAppSettingsViewController.h; sourceTree = "<group>"; };
|
||||||
DA95D5A914DF0691008D1B94 /* IASKAppSettingsViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = IASKAppSettingsViewController.m; sourceTree = "<group>"; };
|
DA95D5A914DF0691008D1B94 /* IASKAppSettingsViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = IASKAppSettingsViewController.m; sourceTree = "<group>"; };
|
||||||
@ -1680,10 +1701,21 @@
|
|||||||
/* End PBXFileReference section */
|
/* End PBXFileReference section */
|
||||||
|
|
||||||
/* Begin PBXFrameworksBuildPhase section */
|
/* Begin PBXFrameworksBuildPhase section */
|
||||||
|
DA4425C81557BED40052177D /* Frameworks */ = {
|
||||||
|
isa = PBXFrameworksBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
DA4425CC1557BED40052177D /* Foundation.framework in Frameworks */,
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
};
|
||||||
DA5BFA41147E415C00F98B1E /* Frameworks */ = {
|
DA5BFA41147E415C00F98B1E /* Frameworks */ = {
|
||||||
isa = PBXFrameworksBuildPhase;
|
isa = PBXFrameworksBuildPhase;
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
files = (
|
files = (
|
||||||
|
DA79A9B91557DB4C00BAA07A /* libjrswizzle.a in Frameworks */,
|
||||||
|
DA79A9BA1557DB4C00BAA07A /* libuicolor-utilities.a in Frameworks */,
|
||||||
|
DA44260A1557D9E40052177D /* libiCloudStoreManager.a in Frameworks */,
|
||||||
DAD312C21552A22700A3F9ED /* libsqlite3.dylib in Frameworks */,
|
DAD312C21552A22700A3F9ED /* libsqlite3.dylib in Frameworks */,
|
||||||
DAD312BF1552A1BD00A3F9ED /* libLocalytics.a in Frameworks */,
|
DAD312BF1552A1BD00A3F9ED /* libLocalytics.a in Frameworks */,
|
||||||
DABB981615100B4000B05417 /* SystemConfiguration.framework in Frameworks */,
|
DABB981615100B4000B05417 /* SystemConfiguration.framework in Frameworks */,
|
||||||
@ -1700,6 +1732,7 @@
|
|||||||
DA5BFA4F147E415C00F98B1E /* CoreData.framework in Frameworks */,
|
DA5BFA4F147E415C00F98B1E /* CoreData.framework in Frameworks */,
|
||||||
DAD3126715528C9C00A3F9ED /* Crashlytics.framework in Frameworks */,
|
DAD3126715528C9C00A3F9ED /* Crashlytics.framework in Frameworks */,
|
||||||
DAD3126915528C9C00A3F9ED /* libTestFlight.a in Frameworks */,
|
DAD3126915528C9C00A3F9ED /* libTestFlight.a in Frameworks */,
|
||||||
|
DA79A9BC1557DB6F00BAA07A /* libscryptenc-ios.a in Frameworks */,
|
||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
};
|
};
|
||||||
@ -1731,9 +1764,6 @@
|
|||||||
isa = PBXFrameworksBuildPhase;
|
isa = PBXFrameworksBuildPhase;
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
files = (
|
files = (
|
||||||
DA1A144414E4950C00BCFFBE /* libscryptenc.a in Frameworks */,
|
|
||||||
DAC63278148680740075AEA5 /* libjrswizzle.a in Frameworks */,
|
|
||||||
DAC63277148680700075AEA5 /* libuicolor-utilities.a in Frameworks */,
|
|
||||||
DAC77CAE148291A600BCF976 /* Foundation.framework in Frameworks */,
|
DAC77CAE148291A600BCF976 /* Foundation.framework in Frameworks */,
|
||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
@ -1749,20 +1779,20 @@
|
|||||||
/* End PBXFrameworksBuildPhase section */
|
/* End PBXFrameworksBuildPhase section */
|
||||||
|
|
||||||
/* Begin PBXGroup section */
|
/* Begin PBXGroup section */
|
||||||
DA1A142814E494DA00BCFFBE /* Products */ = {
|
DA4425D71557BF260052177D /* iCloudStoreManager */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
DA1A143814E494DE00BCFFBE /* libscryptenc.a */,
|
DA4425F11557BF260052177D /* UbiquityStoreManager.h */,
|
||||||
DA1A143A14E494DE00BCFFBE /* libscryptcrypto.a */,
|
DA4425F21557BF260052177D /* UbiquityStoreManager.m */,
|
||||||
DA1A143C14E494DE00BCFFBE /* libutil.a */,
|
|
||||||
);
|
);
|
||||||
name = Products;
|
name = iCloudStoreManager;
|
||||||
|
path = External/iCloudStoreManager/iCloudStoreManager;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
};
|
};
|
||||||
DA5BFA39147E415C00F98B1E = {
|
DA5BFA39147E415C00F98B1E = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
DA1A142714E494DA00BCFFBE /* scrypt.xcodeproj */,
|
DA79A9BD1557DDC700BAA07A /* scrypt.xcodeproj */,
|
||||||
DA5BFA50147E415C00F98B1E /* MasterPassword */,
|
DA5BFA50147E415C00F98B1E /* MasterPassword */,
|
||||||
DAB8D46F15036BF600CED3BC /* Resources */,
|
DAB8D46F15036BF600CED3BC /* Resources */,
|
||||||
DABB980A150FF40100B05417 /* SendToMac */,
|
DABB980A150FF40100B05417 /* SendToMac */,
|
||||||
@ -1773,6 +1803,7 @@
|
|||||||
DAD3125E15528C9C00A3F9ED /* Crashlytics */,
|
DAD3125E15528C9C00A3F9ED /* Crashlytics */,
|
||||||
DAD3126115528C9C00A3F9ED /* TestFlight */,
|
DAD3126115528C9C00A3F9ED /* TestFlight */,
|
||||||
DAD3127315528CD200A3F9ED /* Localytics */,
|
DAD3127315528CD200A3F9ED /* Localytics */,
|
||||||
|
DA4425D71557BF260052177D /* iCloudStoreManager */,
|
||||||
DA5BFA47147E415C00F98B1E /* Frameworks */,
|
DA5BFA47147E415C00F98B1E /* Frameworks */,
|
||||||
DA5BFA45147E415C00F98B1E /* Products */,
|
DA5BFA45147E415C00F98B1E /* Products */,
|
||||||
);
|
);
|
||||||
@ -1787,6 +1818,7 @@
|
|||||||
DAC6326C148680650075AEA5 /* libjrswizzle.a */,
|
DAC6326C148680650075AEA5 /* libjrswizzle.a */,
|
||||||
DA95D59C14DF063C008D1B94 /* libInAppSettingsKit.a */,
|
DA95D59C14DF063C008D1B94 /* libInAppSettingsKit.a */,
|
||||||
DAD3127115528CD200A3F9ED /* libLocalytics.a */,
|
DAD3127115528CD200A3F9ED /* libLocalytics.a */,
|
||||||
|
DA4425CB1557BED40052177D /* libiCloudStoreManager.a */,
|
||||||
);
|
);
|
||||||
name = Products;
|
name = Products;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
@ -1816,6 +1848,10 @@
|
|||||||
DAB8D43E15036BCF00CED3BC /* iOS */,
|
DAB8D43E15036BCF00CED3BC /* iOS */,
|
||||||
DA600C2415054F3A008E9AB6 /* MPAppDelegate_Key.h */,
|
DA600C2415054F3A008E9AB6 /* MPAppDelegate_Key.h */,
|
||||||
DA600C2315054F3A008E9AB6 /* MPAppDelegate_Key.m */,
|
DA600C2315054F3A008E9AB6 /* MPAppDelegate_Key.m */,
|
||||||
|
DA4426041557C1990052177D /* MPAppDelegate_Shared.h */,
|
||||||
|
DA4426051557C1990052177D /* MPAppDelegate_Shared.m */,
|
||||||
|
DA4426061557C1990052177D /* MPAppDelegate_Store.h */,
|
||||||
|
DA4426071557C1990052177D /* MPAppDelegate_Store.m */,
|
||||||
DA600C2615056427008E9AB6 /* MPConfig.h */,
|
DA600C2615056427008E9AB6 /* MPConfig.h */,
|
||||||
DA600C2715056427008E9AB6 /* MPConfig.m */,
|
DA600C2715056427008E9AB6 /* MPConfig.m */,
|
||||||
DAB8D45515036BCF00CED3BC /* MPElementStoredEntity.m */,
|
DAB8D45515036BCF00CED3BC /* MPElementStoredEntity.m */,
|
||||||
@ -1830,6 +1866,16 @@
|
|||||||
path = MasterPassword;
|
path = MasterPassword;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
};
|
};
|
||||||
|
DA79A9BE1557DDC700BAA07A /* Products */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
DA79A9CE1557DDC800BAA07A /* libscryptenc.a */,
|
||||||
|
DA79A9D01557DDC800BAA07A /* libscryptcrypto.a */,
|
||||||
|
DA79A9D21557DDC800BAA07A /* libutil.a */,
|
||||||
|
);
|
||||||
|
name = Products;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
DA95D59E14DF063C008D1B94 /* InAppSettingsKit */ = {
|
DA95D59E14DF063C008D1B94 /* InAppSettingsKit */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
@ -2796,6 +2842,7 @@
|
|||||||
DAFE45FC15039823003ABA7C /* Pearl-Crypto */ = {
|
DAFE45FC15039823003ABA7C /* Pearl-Crypto */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
DA79A9BB1557DB6F00BAA07A /* libscryptenc-ios.a */,
|
||||||
DAFE45FD15039823003ABA7C /* Pearl-Crypto.h */,
|
DAFE45FD15039823003ABA7C /* Pearl-Crypto.h */,
|
||||||
DAFE45FE15039823003ABA7C /* PearlCryptUtils.h */,
|
DAFE45FE15039823003ABA7C /* PearlCryptUtils.h */,
|
||||||
DAFE45FF15039823003ABA7C /* PearlCryptUtils.m */,
|
DAFE45FF15039823003ABA7C /* PearlCryptUtils.m */,
|
||||||
@ -2863,6 +2910,14 @@
|
|||||||
/* End PBXGroup section */
|
/* End PBXGroup section */
|
||||||
|
|
||||||
/* Begin PBXHeadersBuildPhase section */
|
/* Begin PBXHeadersBuildPhase section */
|
||||||
|
DA4425C91557BED40052177D /* Headers */ = {
|
||||||
|
isa = PBXHeadersBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
DA4426001557BF260052177D /* UbiquityStoreManager.h in Headers */,
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
};
|
||||||
DA95D59A14DF063C008D1B94 /* Headers */ = {
|
DA95D59A14DF063C008D1B94 /* Headers */ = {
|
||||||
isa = PBXHeadersBuildPhase;
|
isa = PBXHeadersBuildPhase;
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
@ -2961,6 +3016,23 @@
|
|||||||
/* End PBXHeadersBuildPhase section */
|
/* End PBXHeadersBuildPhase section */
|
||||||
|
|
||||||
/* Begin PBXNativeTarget section */
|
/* Begin PBXNativeTarget section */
|
||||||
|
DA4425CA1557BED40052177D /* iCloudStoreManager */ = {
|
||||||
|
isa = PBXNativeTarget;
|
||||||
|
buildConfigurationList = DA4425D31557BED40052177D /* Build configuration list for PBXNativeTarget "iCloudStoreManager" */;
|
||||||
|
buildPhases = (
|
||||||
|
DA4425C71557BED40052177D /* Sources */,
|
||||||
|
DA4425C81557BED40052177D /* Frameworks */,
|
||||||
|
DA4425C91557BED40052177D /* Headers */,
|
||||||
|
);
|
||||||
|
buildRules = (
|
||||||
|
);
|
||||||
|
dependencies = (
|
||||||
|
);
|
||||||
|
name = iCloudStoreManager;
|
||||||
|
productName = iCloudStoreManager;
|
||||||
|
productReference = DA4425CB1557BED40052177D /* libiCloudStoreManager.a */;
|
||||||
|
productType = "com.apple.product-type.library.static";
|
||||||
|
};
|
||||||
DA5BFA43147E415C00F98B1E /* MasterPassword */ = {
|
DA5BFA43147E415C00F98B1E /* MasterPassword */ = {
|
||||||
isa = PBXNativeTarget;
|
isa = PBXNativeTarget;
|
||||||
buildConfigurationList = DA5BFA6D147E415C00F98B1E /* Build configuration list for PBXNativeTarget "MasterPassword" */;
|
buildConfigurationList = DA5BFA6D147E415C00F98B1E /* Build configuration list for PBXNativeTarget "MasterPassword" */;
|
||||||
@ -2974,6 +3046,7 @@
|
|||||||
buildRules = (
|
buildRules = (
|
||||||
);
|
);
|
||||||
dependencies = (
|
dependencies = (
|
||||||
|
DA79A9DA1557DDEB00BAA07A /* PBXTargetDependency */,
|
||||||
);
|
);
|
||||||
name = MasterPassword;
|
name = MasterPassword;
|
||||||
productName = MasterPassword;
|
productName = MasterPassword;
|
||||||
@ -3090,8 +3163,8 @@
|
|||||||
projectDirPath = "";
|
projectDirPath = "";
|
||||||
projectReferences = (
|
projectReferences = (
|
||||||
{
|
{
|
||||||
ProductGroup = DA1A142814E494DA00BCFFBE /* Products */;
|
ProductGroup = DA79A9BE1557DDC700BAA07A /* Products */;
|
||||||
ProjectRef = DA1A142714E494DA00BCFFBE /* scrypt.xcodeproj */;
|
ProjectRef = DA79A9BD1557DDC700BAA07A /* scrypt.xcodeproj */;
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
projectRoot = "";
|
projectRoot = "";
|
||||||
@ -3102,30 +3175,31 @@
|
|||||||
DAC6326B148680650075AEA5 /* jrswizzle */,
|
DAC6326B148680650075AEA5 /* jrswizzle */,
|
||||||
DA95D59B14DF063C008D1B94 /* InAppSettingsKit */,
|
DA95D59B14DF063C008D1B94 /* InAppSettingsKit */,
|
||||||
DAD3127015528CD200A3F9ED /* Localytics */,
|
DAD3127015528CD200A3F9ED /* Localytics */,
|
||||||
|
DA4425CA1557BED40052177D /* iCloudStoreManager */,
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
/* End PBXProject section */
|
/* End PBXProject section */
|
||||||
|
|
||||||
/* Begin PBXReferenceProxy section */
|
/* Begin PBXReferenceProxy section */
|
||||||
DA1A143814E494DE00BCFFBE /* libscryptenc.a */ = {
|
DA79A9CE1557DDC800BAA07A /* libscryptenc.a */ = {
|
||||||
isa = PBXReferenceProxy;
|
isa = PBXReferenceProxy;
|
||||||
fileType = archive.ar;
|
fileType = archive.ar;
|
||||||
path = libscryptenc.a;
|
path = libscryptenc.a;
|
||||||
remoteRef = DA1A143714E494DE00BCFFBE /* PBXContainerItemProxy */;
|
remoteRef = DA79A9CD1557DDC800BAA07A /* PBXContainerItemProxy */;
|
||||||
sourceTree = BUILT_PRODUCTS_DIR;
|
sourceTree = BUILT_PRODUCTS_DIR;
|
||||||
};
|
};
|
||||||
DA1A143A14E494DE00BCFFBE /* libscryptcrypto.a */ = {
|
DA79A9D01557DDC800BAA07A /* libscryptcrypto.a */ = {
|
||||||
isa = PBXReferenceProxy;
|
isa = PBXReferenceProxy;
|
||||||
fileType = archive.ar;
|
fileType = archive.ar;
|
||||||
path = libscryptcrypto.a;
|
path = libscryptcrypto.a;
|
||||||
remoteRef = DA1A143914E494DE00BCFFBE /* PBXContainerItemProxy */;
|
remoteRef = DA79A9CF1557DDC800BAA07A /* PBXContainerItemProxy */;
|
||||||
sourceTree = BUILT_PRODUCTS_DIR;
|
sourceTree = BUILT_PRODUCTS_DIR;
|
||||||
};
|
};
|
||||||
DA1A143C14E494DE00BCFFBE /* libutil.a */ = {
|
DA79A9D21557DDC800BAA07A /* libutil.a */ = {
|
||||||
isa = PBXReferenceProxy;
|
isa = PBXReferenceProxy;
|
||||||
fileType = archive.ar;
|
fileType = archive.ar;
|
||||||
path = libutil.a;
|
path = libutil.a;
|
||||||
remoteRef = DA1A143B14E494DE00BCFFBE /* PBXContainerItemProxy */;
|
remoteRef = DA79A9D11557DDC800BAA07A /* PBXContainerItemProxy */;
|
||||||
sourceTree = BUILT_PRODUCTS_DIR;
|
sourceTree = BUILT_PRODUCTS_DIR;
|
||||||
};
|
};
|
||||||
/* End PBXReferenceProxy section */
|
/* End PBXReferenceProxy section */
|
||||||
@ -3825,6 +3899,14 @@
|
|||||||
/* End PBXShellScriptBuildPhase section */
|
/* End PBXShellScriptBuildPhase section */
|
||||||
|
|
||||||
/* Begin PBXSourcesBuildPhase section */
|
/* Begin PBXSourcesBuildPhase section */
|
||||||
|
DA4425C71557BED40052177D /* Sources */ = {
|
||||||
|
isa = PBXSourcesBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
DA4426011557BF260052177D /* UbiquityStoreManager.m in Sources */,
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
};
|
||||||
DA5BFA40147E415C00F98B1E /* Sources */ = {
|
DA5BFA40147E415C00F98B1E /* Sources */ = {
|
||||||
isa = PBXSourcesBuildPhase;
|
isa = PBXSourcesBuildPhase;
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
@ -3844,6 +3926,8 @@
|
|||||||
DAB8D46E15036BCF00CED3BC /* MPElementGeneratedEntity.m in Sources */,
|
DAB8D46E15036BCF00CED3BC /* MPElementGeneratedEntity.m in Sources */,
|
||||||
DA600C2515054F3A008E9AB6 /* MPAppDelegate_Key.m in Sources */,
|
DA600C2515054F3A008E9AB6 /* MPAppDelegate_Key.m in Sources */,
|
||||||
DA600C2815056428008E9AB6 /* MPConfig.m in Sources */,
|
DA600C2815056428008E9AB6 /* MPConfig.m in Sources */,
|
||||||
|
DA4426081557C1990052177D /* MPAppDelegate_Shared.m in Sources */,
|
||||||
|
DA4426091557C1990052177D /* MPAppDelegate_Store.m in Sources */,
|
||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
};
|
};
|
||||||
@ -3939,6 +4023,11 @@
|
|||||||
/* End PBXSourcesBuildPhase section */
|
/* End PBXSourcesBuildPhase section */
|
||||||
|
|
||||||
/* Begin PBXTargetDependency section */
|
/* Begin PBXTargetDependency section */
|
||||||
|
DA79A9DA1557DDEB00BAA07A /* PBXTargetDependency */ = {
|
||||||
|
isa = PBXTargetDependency;
|
||||||
|
name = "Makefile-scrypt";
|
||||||
|
targetProxy = DA79A9D91557DDEB00BAA07A /* PBXContainerItemProxy */;
|
||||||
|
};
|
||||||
DAC63284148681200075AEA5 /* PBXTargetDependency */ = {
|
DAC63284148681200075AEA5 /* PBXTargetDependency */ = {
|
||||||
isa = PBXTargetDependency;
|
isa = PBXTargetDependency;
|
||||||
target = DAC6325C1486805C0075AEA5 /* uicolor-utilities */;
|
target = DAC6325C1486805C0075AEA5 /* uicolor-utilities */;
|
||||||
@ -3971,6 +4060,27 @@
|
|||||||
/* End PBXVariantGroup section */
|
/* End PBXVariantGroup section */
|
||||||
|
|
||||||
/* Begin XCBuildConfiguration section */
|
/* Begin XCBuildConfiguration section */
|
||||||
|
DA4425D41557BED40052177D /* Debug */ = {
|
||||||
|
isa = XCBuildConfiguration;
|
||||||
|
buildSettings = {
|
||||||
|
CLANG_ENABLE_OBJC_ARC = YES;
|
||||||
|
};
|
||||||
|
name = Debug;
|
||||||
|
};
|
||||||
|
DA4425D51557BED40052177D /* AdHoc */ = {
|
||||||
|
isa = XCBuildConfiguration;
|
||||||
|
buildSettings = {
|
||||||
|
CLANG_ENABLE_OBJC_ARC = YES;
|
||||||
|
};
|
||||||
|
name = AdHoc;
|
||||||
|
};
|
||||||
|
DA4425D61557BED40052177D /* AppStore */ = {
|
||||||
|
isa = XCBuildConfiguration;
|
||||||
|
buildSettings = {
|
||||||
|
CLANG_ENABLE_OBJC_ARC = YES;
|
||||||
|
};
|
||||||
|
name = AppStore;
|
||||||
|
};
|
||||||
DA5BFA6B147E415C00F98B1E /* Debug */ = {
|
DA5BFA6B147E415C00F98B1E /* Debug */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
@ -4100,6 +4210,7 @@
|
|||||||
LIBRARY_SEARCH_PATHS = (
|
LIBRARY_SEARCH_PATHS = (
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"\"$(SRCROOT)/TestFlight\"",
|
"\"$(SRCROOT)/TestFlight\"",
|
||||||
|
"\"$(SRCROOT)/External/Pearl/Pearl-Crypto\"",
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
name = Debug;
|
name = Debug;
|
||||||
@ -4118,6 +4229,7 @@
|
|||||||
LIBRARY_SEARCH_PATHS = (
|
LIBRARY_SEARCH_PATHS = (
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"\"$(SRCROOT)/TestFlight\"",
|
"\"$(SRCROOT)/TestFlight\"",
|
||||||
|
"\"$(SRCROOT)/External/Pearl/Pearl-Crypto\"",
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
name = AdHoc;
|
name = AdHoc;
|
||||||
@ -4216,6 +4328,7 @@
|
|||||||
LIBRARY_SEARCH_PATHS = (
|
LIBRARY_SEARCH_PATHS = (
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"\"$(SRCROOT)/TestFlight\"",
|
"\"$(SRCROOT)/TestFlight\"",
|
||||||
|
"\"$(SRCROOT)/External/Pearl/Pearl-Crypto\"",
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
name = AppStore;
|
name = AppStore;
|
||||||
@ -4369,6 +4482,16 @@
|
|||||||
/* End XCBuildConfiguration section */
|
/* End XCBuildConfiguration section */
|
||||||
|
|
||||||
/* Begin XCConfigurationList section */
|
/* Begin XCConfigurationList section */
|
||||||
|
DA4425D31557BED40052177D /* Build configuration list for PBXNativeTarget "iCloudStoreManager" */ = {
|
||||||
|
isa = XCConfigurationList;
|
||||||
|
buildConfigurations = (
|
||||||
|
DA4425D41557BED40052177D /* Debug */,
|
||||||
|
DA4425D51557BED40052177D /* AdHoc */,
|
||||||
|
DA4425D61557BED40052177D /* AppStore */,
|
||||||
|
);
|
||||||
|
defaultConfigurationIsVisible = 0;
|
||||||
|
defaultConfigurationName = AdHoc;
|
||||||
|
};
|
||||||
DA5BFA3E147E415C00F98B1E /* Build configuration list for PBXProject "MasterPassword-iOS" */ = {
|
DA5BFA3E147E415C00F98B1E /* Build configuration list for PBXProject "MasterPassword-iOS" */ = {
|
||||||
isa = XCConfigurationList;
|
isa = XCConfigurationList;
|
||||||
buildConfigurations = (
|
buildConfigurations = (
|
||||||
|
@ -8,34 +8,8 @@
|
|||||||
|
|
||||||
#import "MPAppDelegate.h"
|
#import "MPAppDelegate.h"
|
||||||
|
|
||||||
@interface MPAppDelegate () {
|
|
||||||
|
|
||||||
NSPersistentStoreCoordinator *_persistentStoreCoordinator;
|
|
||||||
NSManagedObjectModel *_managedObjectModel;
|
|
||||||
NSManagedObjectContext *_managedObjectContext;
|
|
||||||
}
|
|
||||||
|
|
||||||
@property (readonly, strong, nonatomic) NSPersistentStoreCoordinator *persistentStoreCoordinator;
|
|
||||||
@property (readonly, strong, nonatomic) NSManagedObjectModel *managedObjectModel;
|
|
||||||
@property (readonly, strong, nonatomic) NSManagedObjectContext *managedObjectContext;
|
|
||||||
|
|
||||||
@property (strong, nonatomic) NSData *key;
|
|
||||||
@property (strong, nonatomic) NSData *keyHash;
|
|
||||||
@property (strong, nonatomic) NSString *keyHashHex;
|
|
||||||
|
|
||||||
@end
|
|
||||||
|
|
||||||
@interface MPAppDelegate (Key)
|
@interface MPAppDelegate (Key)
|
||||||
|
|
||||||
+ (MPAppDelegate *)get;
|
|
||||||
|
|
||||||
- (NSURL *)applicationFilesDirectory;
|
|
||||||
|
|
||||||
+ (NSManagedObjectModel *)managedObjectModel;
|
|
||||||
+ (NSManagedObjectContext *)managedObjectContext;
|
|
||||||
- (void)saveContext;
|
|
||||||
- (void)printStore;
|
|
||||||
|
|
||||||
- (void)loadStoredKey;
|
- (void)loadStoredKey;
|
||||||
- (IBAction)signOut:(id)sender;
|
- (IBAction)signOut:(id)sender;
|
||||||
|
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
//
|
//
|
||||||
|
|
||||||
#import "MPConfig.h"
|
#import "MPConfig.h"
|
||||||
#import "MPAppDelegate_Key.h"
|
#import "MPAppDelegate_Shared.h"
|
||||||
#import "MPElementEntity.h"
|
#import "MPElementEntity.h"
|
||||||
|
|
||||||
@implementation MPAppDelegate (Key)
|
@implementation MPAppDelegate (Key)
|
||||||
@ -36,181 +36,6 @@ static NSDictionary *keyHashQuery() {
|
|||||||
return MPKeyHashQuery;
|
return MPKeyHashQuery;
|
||||||
}
|
}
|
||||||
|
|
||||||
- (NSURL *)applicationFilesDirectory {
|
|
||||||
|
|
||||||
#if __IPHONE_OS_VERSION_MIN_REQUIRED
|
|
||||||
return [[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject];
|
|
||||||
#else
|
|
||||||
NSURL *appSupportURL = [[[NSFileManager defaultManager] URLsForDirectory:NSApplicationSupportDirectory inDomains:NSUserDomainMask] lastObject];
|
|
||||||
NSURL *applicationFilesDirectory = [appSupportURL URLByAppendingPathComponent:@"com.lyndir.lhunath.MasterPassword"];
|
|
||||||
|
|
||||||
NSError *error = nil;
|
|
||||||
[[NSFileManager defaultManager] createDirectoryAtURL:applicationFilesDirectory withIntermediateDirectories:YES attributes:nil error:&error];
|
|
||||||
if (error)
|
|
||||||
err(@"Couldn't create application directory: %@, error occurred: %@", applicationFilesDirectory, error);
|
|
||||||
|
|
||||||
return applicationFilesDirectory;
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
#pragma mark - Core Data stack
|
|
||||||
|
|
||||||
+ (NSManagedObjectContext *)managedObjectContext {
|
|
||||||
|
|
||||||
return [[self get] managedObjectContext];
|
|
||||||
}
|
|
||||||
|
|
||||||
+ (NSManagedObjectModel *)managedObjectModel {
|
|
||||||
|
|
||||||
return [[self get] managedObjectModel];
|
|
||||||
}
|
|
||||||
|
|
||||||
- (NSManagedObjectModel *)managedObjectModel {
|
|
||||||
|
|
||||||
if (_managedObjectModel)
|
|
||||||
return _managedObjectModel;
|
|
||||||
|
|
||||||
NSURL *modelURL = [[NSBundle mainBundle] URLForResource:@"MasterPassword" withExtension:@"momd"];
|
|
||||||
return _managedObjectModel = [[NSManagedObjectModel alloc] initWithContentsOfURL:modelURL];
|
|
||||||
}
|
|
||||||
|
|
||||||
- (NSManagedObjectContext *)managedObjectContext {
|
|
||||||
|
|
||||||
if (_managedObjectContext)
|
|
||||||
return _managedObjectContext;
|
|
||||||
|
|
||||||
NSPersistentStoreCoordinator *coordinator = [self persistentStoreCoordinator];
|
|
||||||
if (coordinator) {
|
|
||||||
// Put concurrency type on main queue, because otherwise updates break updating the search table UI.
|
|
||||||
_managedObjectContext = [[NSManagedObjectContext alloc] initWithConcurrencyType:NSMainQueueConcurrencyType/*NSPrivateQueueConcurrencyType*/];
|
|
||||||
_managedObjectContext.persistentStoreCoordinator = coordinator;
|
|
||||||
|
|
||||||
[[NSNotificationCenter defaultCenter] addObserverForName:NSPersistentStoreDidImportUbiquitousContentChangesNotification
|
|
||||||
object:coordinator
|
|
||||||
queue:nil
|
|
||||||
usingBlock:^(NSNotification *note) {
|
|
||||||
dbg(@"Ubiquitous content change: %@", note);
|
|
||||||
|
|
||||||
[_managedObjectContext performBlock:^{
|
|
||||||
[_managedObjectContext mergeChangesFromContextDidSaveNotification:note];
|
|
||||||
[self printStore];
|
|
||||||
|
|
||||||
[[NSNotificationCenter defaultCenter] postNotification:
|
|
||||||
[NSNotification notificationWithName:MPNotificationStoreUpdated
|
|
||||||
object:self userInfo:[note userInfo]]];
|
|
||||||
}];
|
|
||||||
}];
|
|
||||||
}
|
|
||||||
|
|
||||||
return _managedObjectContext;
|
|
||||||
}
|
|
||||||
|
|
||||||
- (NSPersistentStoreCoordinator *)persistentStoreCoordinator {
|
|
||||||
|
|
||||||
if (_persistentStoreCoordinator)
|
|
||||||
return _persistentStoreCoordinator;
|
|
||||||
|
|
||||||
NSString *contentName = @"store";
|
|
||||||
NSURL *storeURL = [[self applicationFilesDirectory] URLByAppendingPathComponent:@"MasterPassword.sqlite"];
|
|
||||||
NSURL *contentURL = [[[NSFileManager defaultManager] URLForUbiquityContainerIdentifier:nil]
|
|
||||||
URLByAppendingPathComponent:@"logs" isDirectory:YES];
|
|
||||||
|
|
||||||
//#if DEBUG
|
|
||||||
// dbg(@"Deleting store and content.");
|
|
||||||
// NSError *storeRemovalError = nil, *contentRemovalError = nil;
|
|
||||||
// [[NSFileManager defaultManager] removeItemAtURL:storeURL error:&storeRemovalError];
|
|
||||||
// if (storeRemovalError)
|
|
||||||
// err(@"Store removal error: %@", storeRemovalError);
|
|
||||||
// else
|
|
||||||
// [[NSFileManager defaultManager] removeItemAtURL:contentURL error:&contentRemovalError];
|
|
||||||
// if (contentRemovalError)
|
|
||||||
// err(@"Content removal error: %@", contentRemovalError);
|
|
||||||
//#endif
|
|
||||||
|
|
||||||
_persistentStoreCoordinator = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:[self managedObjectModel]];
|
|
||||||
[_persistentStoreCoordinator lock];
|
|
||||||
@try {
|
|
||||||
NSError *error = nil;
|
|
||||||
if (![_persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeURL
|
|
||||||
options:[NSDictionary dictionaryWithObjectsAndKeys:
|
|
||||||
[NSNumber numberWithBool:YES], NSInferMappingModelAutomaticallyOption,
|
|
||||||
[NSNumber numberWithBool:YES], NSMigratePersistentStoresAutomaticallyOption,
|
|
||||||
#if __IPHONE_OS_VERSION_MIN_REQUIRED
|
|
||||||
NSFileProtectionComplete, NSPersistentStoreFileProtectionKey,
|
|
||||||
#endif
|
|
||||||
contentURL, NSPersistentStoreUbiquitousContentURLKey,
|
|
||||||
contentName, NSPersistentStoreUbiquitousContentNameKey,
|
|
||||||
nil]
|
|
||||||
error:&error]) {
|
|
||||||
ftl(@"Unresolved error %@, %@", error, [error userInfo]);
|
|
||||||
#if DEBUG
|
|
||||||
[[NSFileManager defaultManager] removeItemAtURL:storeURL error:nil];
|
|
||||||
wrn(@"Deleted datastore: %@", storeURL);
|
|
||||||
#endif
|
|
||||||
@throw error;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@finally {
|
|
||||||
[_persistentStoreCoordinator unlock];
|
|
||||||
}
|
|
||||||
|
|
||||||
return _persistentStoreCoordinator;
|
|
||||||
}
|
|
||||||
|
|
||||||
- (void)saveContext {
|
|
||||||
|
|
||||||
[self.managedObjectContext performBlock:^{
|
|
||||||
NSError *error = nil;
|
|
||||||
if ([self.managedObjectContext hasChanges] && ![self.managedObjectContext save:&error])
|
|
||||||
err(@"Unresolved error %@", error);
|
|
||||||
}];
|
|
||||||
}
|
|
||||||
|
|
||||||
- (void)printStore {
|
|
||||||
|
|
||||||
if (!_managedObjectModel || !_managedObjectContext) {
|
|
||||||
trc(@"Not printing store: store not initialized.");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
[self.managedObjectContext performBlock:^{
|
|
||||||
trc(@"=== All entities ===");
|
|
||||||
for(NSEntityDescription *entity in [_managedObjectModel entities]) {
|
|
||||||
NSFetchRequest *request = [NSFetchRequest new];
|
|
||||||
[request setEntity:entity];
|
|
||||||
NSError *error;
|
|
||||||
NSArray *results = [_managedObjectContext executeFetchRequest:request error:&error];
|
|
||||||
for(NSManagedObject *o in results) {
|
|
||||||
if ([o isKindOfClass:[MPElementEntity class]]) {
|
|
||||||
MPElementEntity *e = (MPElementEntity *)o;
|
|
||||||
trc(@"For descriptor: %@, found: %@: %@ (%@)", entity.name, [o class], e.name, e.mpHashHex);
|
|
||||||
} else {
|
|
||||||
trc(@"For descriptor: %@, found: %@", entity.name, [o class]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
trc(@"---");
|
|
||||||
if ([MPAppDelegate get].keyHashHex) {
|
|
||||||
trc(@"=== Known sites ===");
|
|
||||||
NSFetchRequest *fetchRequest = [_managedObjectModel
|
|
||||||
fetchRequestFromTemplateWithName:@"MPElements"
|
|
||||||
substitutionVariables:[NSDictionary dictionaryWithObjectsAndKeys:
|
|
||||||
@"", @"query",
|
|
||||||
[MPAppDelegate get].keyHashHex, @"mpHashHex",
|
|
||||||
nil]];
|
|
||||||
[fetchRequest setSortDescriptors:
|
|
||||||
[NSArray arrayWithObject:[[NSSortDescriptor alloc] initWithKey:@"uses" ascending:NO]]];
|
|
||||||
|
|
||||||
NSError *error = nil;
|
|
||||||
for (MPElementEntity *e in [_managedObjectContext executeFetchRequest:fetchRequest error:&error]) {
|
|
||||||
trc(@"Found site: %@ (%@): %@", e.name, e.mpHashHex, e);
|
|
||||||
}
|
|
||||||
trc(@"---");
|
|
||||||
} else
|
|
||||||
trc(@"Not printing sites: master password not set.");
|
|
||||||
}];
|
|
||||||
}
|
|
||||||
|
|
||||||
- (void)forgetKey {
|
- (void)forgetKey {
|
||||||
|
|
||||||
dbg(@"Deleting master key and hash from key chain.");
|
dbg(@"Deleting master key and hash from key chain.");
|
||||||
@ -245,17 +70,6 @@ static NSDictionary *keyHashQuery() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
+ (MPAppDelegate *)get {
|
|
||||||
|
|
||||||
#ifdef __IPHONE_OS_VERSION_MIN_REQUIRED
|
|
||||||
return (MPAppDelegate *)[UIApplication sharedApplication].delegate;
|
|
||||||
#elif defined (__MAC_OS_X_VERSION_MIN_REQUIRED)
|
|
||||||
return (MPAppDelegate *)[NSApplication sharedApplication].delegate;
|
|
||||||
#else
|
|
||||||
#error Unsupported OS.
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
- (BOOL)tryMasterPassword:(NSString *)tryPassword {
|
- (BOOL)tryMasterPassword:(NSString *)tryPassword {
|
||||||
|
|
||||||
NSData *keyHash = [PearlKeyChain dataOfItemForQuery:keyHashQuery()];
|
NSData *keyHash = [PearlKeyChain dataOfItemForQuery:keyHashQuery()];
|
||||||
|
27
MasterPassword/MPAppDelegate_Shared.h
Normal file
27
MasterPassword/MPAppDelegate_Shared.h
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
//
|
||||||
|
// MPAppDelegate_Shared.h
|
||||||
|
// MasterPassword
|
||||||
|
//
|
||||||
|
// Created by Maarten Billemont on 24/11/11.
|
||||||
|
// Copyright (c) 2011 Lyndir. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "MPAppDelegate.h"
|
||||||
|
#import "MPAppDelegate_Key.h"
|
||||||
|
#import "MPAppDelegate_Store.h"
|
||||||
|
|
||||||
|
@interface MPAppDelegate () {
|
||||||
|
}
|
||||||
|
|
||||||
|
@property (strong, nonatomic) NSData *key;
|
||||||
|
@property (strong, nonatomic) NSData *keyHash;
|
||||||
|
@property (strong, nonatomic) NSString *keyHashHex;
|
||||||
|
|
||||||
|
@end
|
||||||
|
|
||||||
|
@interface MPAppDelegate (Shared)
|
||||||
|
|
||||||
|
+ (MPAppDelegate *)get;
|
||||||
|
- (NSURL *)applicationFilesDirectory;
|
||||||
|
|
||||||
|
@end
|
41
MasterPassword/MPAppDelegate_Shared.m
Normal file
41
MasterPassword/MPAppDelegate_Shared.m
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
//
|
||||||
|
// MPAppDelegate.m
|
||||||
|
// MasterPassword
|
||||||
|
//
|
||||||
|
// Created by Maarten Billemont on 24/11/11.
|
||||||
|
// Copyright (c) 2011 Lyndir. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "MPAppDelegate_Shared.h"
|
||||||
|
|
||||||
|
@implementation MPAppDelegate (Shared)
|
||||||
|
|
||||||
|
+ (MPAppDelegate *)get {
|
||||||
|
|
||||||
|
#ifdef __IPHONE_OS_VERSION_MIN_REQUIRED
|
||||||
|
return (MPAppDelegate *)[UIApplication sharedApplication].delegate;
|
||||||
|
#elif defined (__MAC_OS_X_VERSION_MIN_REQUIRED)
|
||||||
|
return (MPAppDelegate *)[NSApplication sharedApplication].delegate;
|
||||||
|
#else
|
||||||
|
#error Unsupported OS.
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
- (NSURL *)applicationFilesDirectory {
|
||||||
|
|
||||||
|
#if __IPHONE_OS_VERSION_MIN_REQUIRED
|
||||||
|
return [[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject];
|
||||||
|
#else
|
||||||
|
NSURL *appSupportURL = [[[NSFileManager defaultManager] URLsForDirectory:NSApplicationSupportDirectory inDomains:NSUserDomainMask] lastObject];
|
||||||
|
NSURL *applicationFilesDirectory = [appSupportURL URLByAppendingPathComponent:@"com.lyndir.lhunath.MasterPassword"];
|
||||||
|
|
||||||
|
NSError *error = nil;
|
||||||
|
[[NSFileManager defaultManager] createDirectoryAtURL:applicationFilesDirectory withIntermediateDirectories:YES attributes:nil error:&error];
|
||||||
|
if (error)
|
||||||
|
err(@"Couldn't create application directory: %@, error occurred: %@", applicationFilesDirectory, error);
|
||||||
|
|
||||||
|
return applicationFilesDirectory;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
@end
|
24
MasterPassword/MPAppDelegate_Store.h
Normal file
24
MasterPassword/MPAppDelegate_Store.h
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
//
|
||||||
|
// MPAppDelegate_Key.h
|
||||||
|
// MasterPassword
|
||||||
|
//
|
||||||
|
// Created by Maarten Billemont on 24/11/11.
|
||||||
|
// Copyright (c) 2011 Lyndir. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "MPAppDelegate_Shared.h"
|
||||||
|
|
||||||
|
#import "UbiquityStoreManager.h"
|
||||||
|
|
||||||
|
@interface MPAppDelegate (Store) <UbiquityStoreManagerDelegate>
|
||||||
|
|
||||||
|
+ (NSManagedObjectContext *)managedObjectContext;
|
||||||
|
+ (NSManagedObjectModel *)managedObjectModel;
|
||||||
|
- (NSManagedObjectContext *)managedObjectContext;
|
||||||
|
- (NSManagedObjectModel *)managedObjectModel;
|
||||||
|
|
||||||
|
- (UbiquityStoreManager *)storeManager;
|
||||||
|
- (void)saveContext;
|
||||||
|
- (void)printStore;
|
||||||
|
|
||||||
|
@end
|
173
MasterPassword/MPAppDelegate_Store.m
Normal file
173
MasterPassword/MPAppDelegate_Store.m
Normal file
@ -0,0 +1,173 @@
|
|||||||
|
//
|
||||||
|
// MPAppDelegate.m
|
||||||
|
// MasterPassword
|
||||||
|
//
|
||||||
|
// Created by Maarten Billemont on 24/11/11.
|
||||||
|
// Copyright (c) 2011 Lyndir. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "MPAppDelegate_Store.h"
|
||||||
|
#import "MPElementEntity.h"
|
||||||
|
|
||||||
|
@implementation MPAppDelegate (Store)
|
||||||
|
|
||||||
|
+ (NSManagedObjectContext *)managedObjectContext {
|
||||||
|
|
||||||
|
return [[self get] managedObjectContext];
|
||||||
|
}
|
||||||
|
|
||||||
|
+ (NSManagedObjectModel *)managedObjectModel {
|
||||||
|
|
||||||
|
return [[self get] managedObjectModel];
|
||||||
|
}
|
||||||
|
|
||||||
|
- (NSManagedObjectModel *)managedObjectModel {
|
||||||
|
|
||||||
|
static NSManagedObjectModel *managedObjectModel = nil;
|
||||||
|
if (managedObjectModel)
|
||||||
|
return managedObjectModel;
|
||||||
|
|
||||||
|
NSURL *modelURL = [[NSBundle mainBundle] URLForResource:@"MasterPassword" withExtension:@"momd"];
|
||||||
|
return managedObjectModel = [[NSManagedObjectModel alloc] initWithContentsOfURL:modelURL];
|
||||||
|
}
|
||||||
|
|
||||||
|
- (NSManagedObjectContext *)managedObjectContext {
|
||||||
|
|
||||||
|
static NSManagedObjectContext *managedObjectContext = nil;
|
||||||
|
if (managedObjectContext)
|
||||||
|
return managedObjectContext;
|
||||||
|
|
||||||
|
NSPersistentStoreCoordinator *coordinator = [self persistentStoreCoordinator];
|
||||||
|
assert(coordinator);
|
||||||
|
|
||||||
|
managedObjectContext = [[NSManagedObjectContext alloc] initWithConcurrencyType:NSMainQueueConcurrencyType];
|
||||||
|
[managedObjectContext performBlockAndWait:^{
|
||||||
|
managedObjectContext.persistentStoreCoordinator = coordinator;
|
||||||
|
managedObjectContext.mergePolicy = NSMergeByPropertyObjectTrumpMergePolicy;
|
||||||
|
}];
|
||||||
|
|
||||||
|
return managedObjectContext;
|
||||||
|
}
|
||||||
|
|
||||||
|
- (NSPersistentStoreCoordinator *)persistentStoreCoordinator {
|
||||||
|
|
||||||
|
// Wait until the storeManager is ready.
|
||||||
|
for(__block BOOL isReady = [self storeManager].isReady; !isReady;)
|
||||||
|
dispatch_sync(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
|
||||||
|
isReady = [self storeManager].isReady;
|
||||||
|
});
|
||||||
|
|
||||||
|
assert([self storeManager].isReady);
|
||||||
|
return [self storeManager].persistentStoreCoordinator;
|
||||||
|
}
|
||||||
|
|
||||||
|
- (UbiquityStoreManager *)storeManager {
|
||||||
|
|
||||||
|
static UbiquityStoreManager *storeManager = nil;
|
||||||
|
if (storeManager)
|
||||||
|
return storeManager;
|
||||||
|
|
||||||
|
storeManager = [[UbiquityStoreManager alloc] initWithManagedObjectModel:[self managedObjectModel]
|
||||||
|
localStoreURL:[[self applicationFilesDirectory] URLByAppendingPathComponent:@"MasterPassword.sqlite"]
|
||||||
|
containerIdentifier:@"HL3Q45LX9N.com.lyndir.lhunath.MasterPassword.shared"
|
||||||
|
#if TARGET_OS_IPHONE
|
||||||
|
additionalStoreOptions:[NSDictionary dictionaryWithObject:NSFileProtectionComplete forKey:NSPersistentStoreFileProtectionKey]
|
||||||
|
#else
|
||||||
|
additionalStoreOptions:nil
|
||||||
|
#endif
|
||||||
|
];
|
||||||
|
storeManager.delegate = self;
|
||||||
|
#ifdef DEBUG
|
||||||
|
storeManager.hardResetEnabled = YES;
|
||||||
|
#endif
|
||||||
|
#if TARGET_OS_IPHONE
|
||||||
|
[[NSNotificationCenter defaultCenter] addObserverForName:UIApplicationWillEnterForegroundNotification
|
||||||
|
object:[UIApplication sharedApplication] queue:nil
|
||||||
|
#else
|
||||||
|
[[NSNotificationCenter defaultCenter] addObserverForName:NSApplicationWillBecomeActiveNotification
|
||||||
|
object:[NSApplication sharedApplication] queue:nil
|
||||||
|
#endif
|
||||||
|
usingBlock:^(NSNotification *note) {
|
||||||
|
[storeManager checkiCloudStatus];
|
||||||
|
}];
|
||||||
|
#if TARGET_OS_IPHONE
|
||||||
|
[[NSNotificationCenter defaultCenter] addObserverForName:UIApplicationWillTerminateNotification
|
||||||
|
object:[UIApplication sharedApplication] queue:nil
|
||||||
|
#else
|
||||||
|
[[NSNotificationCenter defaultCenter] addObserverForName:NSApplicationWillTerminateNotification
|
||||||
|
object:[NSApplication sharedApplication] queue:nil
|
||||||
|
#endif
|
||||||
|
usingBlock:^(NSNotification *note) {
|
||||||
|
[self saveContext];
|
||||||
|
}];
|
||||||
|
|
||||||
|
return storeManager;
|
||||||
|
}
|
||||||
|
|
||||||
|
- (NSManagedObjectContext *)managedObjectContextForUbiquityStoreManager:(UbiquityStoreManager *)usm {
|
||||||
|
|
||||||
|
return self.managedObjectContext;
|
||||||
|
}
|
||||||
|
|
||||||
|
- (void)ubiquityStoreManager:(UbiquityStoreManager *)manager didSwitchToiCloud:(BOOL)didSwitch {
|
||||||
|
|
||||||
|
dbg(@"didSwitchToiCloud:%@", [NSNumber numberWithBool:didSwitch]);
|
||||||
|
//[masterViewController.iCloudSwitch setOn:didSwitch animated:YES];
|
||||||
|
}
|
||||||
|
|
||||||
|
- (void)saveContext {
|
||||||
|
|
||||||
|
[self.managedObjectContext performBlock:^{
|
||||||
|
NSError *error = nil;
|
||||||
|
if ([self.managedObjectContext hasChanges])
|
||||||
|
if (![self.managedObjectContext save:&error])
|
||||||
|
err(@"Unresolved error %@", error);
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
|
||||||
|
- (void)printStore {
|
||||||
|
|
||||||
|
if (![self managedObjectModel] || ![self managedObjectContext]) {
|
||||||
|
trc(@"Not printing store: store not initialized.");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
[self.managedObjectContext performBlock:^{
|
||||||
|
trc(@"=== All entities ===");
|
||||||
|
for(NSEntityDescription *entity in [[self managedObjectModel] entities]) {
|
||||||
|
NSFetchRequest *request = [NSFetchRequest new];
|
||||||
|
[request setEntity:entity];
|
||||||
|
NSError *error;
|
||||||
|
NSArray *results = [[self managedObjectContext] executeFetchRequest:request error:&error];
|
||||||
|
for(NSManagedObject *o in results) {
|
||||||
|
if ([o isKindOfClass:[MPElementEntity class]]) {
|
||||||
|
MPElementEntity *e = (MPElementEntity *)o;
|
||||||
|
trc(@"For descriptor: %@, found: %@: %@ (%@)", entity.name, [o class], e.name, e.mpHashHex);
|
||||||
|
} else {
|
||||||
|
trc(@"For descriptor: %@, found: %@", entity.name, [o class]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
trc(@"---");
|
||||||
|
if ([MPAppDelegate get].keyHashHex) {
|
||||||
|
trc(@"=== Known sites ===");
|
||||||
|
NSFetchRequest *fetchRequest = [[self managedObjectModel]
|
||||||
|
fetchRequestFromTemplateWithName:@"MPElements"
|
||||||
|
substitutionVariables:[NSDictionary dictionaryWithObjectsAndKeys:
|
||||||
|
@"", @"query",
|
||||||
|
[MPAppDelegate get].keyHashHex, @"mpHashHex",
|
||||||
|
nil]];
|
||||||
|
[fetchRequest setSortDescriptors:
|
||||||
|
[NSArray arrayWithObject:[[NSSortDescriptor alloc] initWithKey:@"uses" ascending:NO]]];
|
||||||
|
|
||||||
|
NSError *error = nil;
|
||||||
|
for (MPElementEntity *e in [[self managedObjectContext] executeFetchRequest:fetchRequest error:&error]) {
|
||||||
|
trc(@"Found site: %@ (%@): %@", e.name, e.mpHashHex, e);
|
||||||
|
}
|
||||||
|
trc(@"---");
|
||||||
|
} else
|
||||||
|
trc(@"Not printing sites: master password not set.");
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
|
||||||
|
@end
|
@ -7,7 +7,7 @@
|
|||||||
//
|
//
|
||||||
|
|
||||||
#import "MPElementGeneratedEntity.h"
|
#import "MPElementGeneratedEntity.h"
|
||||||
#import "MPAppDelegate_Key.h"
|
#import "MPAppDelegate_Shared.h"
|
||||||
|
|
||||||
|
|
||||||
@implementation MPElementGeneratedEntity
|
@implementation MPElementGeneratedEntity
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
//
|
//
|
||||||
|
|
||||||
#import "MPElementStoredEntity.h"
|
#import "MPElementStoredEntity.h"
|
||||||
#import "MPAppDelegate_Key.h"
|
#import "MPAppDelegate_Shared.h"
|
||||||
|
|
||||||
@interface MPElementStoredEntity ()
|
@interface MPElementStoredEntity ()
|
||||||
|
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
// Copyright (c) 2012 Lyndir. All rights reserved.
|
// Copyright (c) 2012 Lyndir. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#import "MPAppDelegate_Key.h"
|
#import "MPAppDelegate_Shared.h"
|
||||||
#import "MPConfig.h"
|
#import "MPConfig.h"
|
||||||
#import "MPElementEntity.h"
|
#import "MPElementEntity.h"
|
||||||
#import <Carbon/Carbon.h>
|
#import <Carbon/Carbon.h>
|
||||||
@ -26,7 +26,6 @@
|
|||||||
@synthesize statusMenu;
|
@synthesize statusMenu;
|
||||||
@synthesize passwordWindow;
|
@synthesize passwordWindow;
|
||||||
|
|
||||||
@dynamic persistentStoreCoordinator, managedObjectModel, managedObjectContext;
|
|
||||||
@synthesize key;
|
@synthesize key;
|
||||||
@synthesize keyHash;
|
@synthesize keyHash;
|
||||||
@synthesize keyHashHex;
|
@synthesize keyHashHex;
|
||||||
@ -90,6 +89,8 @@ static OSStatus MPHotKeyHander(EventHandlerCallRef nextHandler, EventRef theEven
|
|||||||
status = RegisterEventHotKey(35 /* p */, controlKey + cmdKey, MPShowHotKey, GetApplicationEventTarget(), 0, &hotKeyRef);
|
status = RegisterEventHotKey(35 /* p */, controlKey + cmdKey, MPShowHotKey, GetApplicationEventTarget(), 0, &hotKeyRef);
|
||||||
if(status != noErr)
|
if(status != noErr)
|
||||||
err(@"Error registering hotkey: %d", status);
|
err(@"Error registering hotkey: %d", status);
|
||||||
|
|
||||||
|
[[self storeManager] useiCloudStore:YES];
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)applicationDidBecomeActive:(NSNotification *)notification {
|
- (void)applicationDidBecomeActive:(NSNotification *)notification {
|
||||||
@ -168,7 +169,7 @@ static OSStatus MPHotKeyHander(EventHandlerCallRef nextHandler, EventRef theEven
|
|||||||
{
|
{
|
||||||
// Save changes in the application's managed object context before the application terminates.
|
// Save changes in the application's managed object context before the application terminates.
|
||||||
|
|
||||||
if (!_managedObjectContext) {
|
if (![self managedObjectContext]) {
|
||||||
return NSTerminateNow;
|
return NSTerminateNow;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
//
|
//
|
||||||
|
|
||||||
#import "MPPasswordWindowController.h"
|
#import "MPPasswordWindowController.h"
|
||||||
#import "MPAppDelegate_Key.h"
|
#import "MPAppDelegate_Shared.h"
|
||||||
#import "MPElementEntity.h"
|
#import "MPElementEntity.h"
|
||||||
#import "MPElementGeneratedEntity.h"
|
#import "MPElementGeneratedEntity.h"
|
||||||
|
|
||||||
|
@ -4,8 +4,11 @@
|
|||||||
<dict>
|
<dict>
|
||||||
<key>com.apple.developer.ubiquity-container-identifiers</key>
|
<key>com.apple.developer.ubiquity-container-identifiers</key>
|
||||||
<array>
|
<array>
|
||||||
<string>$(TeamIdentifierPrefix)com.lyndir.lhunath.MasterPassword</string>
|
<string>$(TeamIdentifierPrefix)com.lyndir.lhunath.MasterPassword.Mac</string>
|
||||||
|
<string>$(TeamIdentifierPrefix)com.lyndir.lhunath.MasterPassword.shared</string>
|
||||||
</array>
|
</array>
|
||||||
|
<key>com.apple.developer.ubiquity-kvstore-identifier</key>
|
||||||
|
<string>$(TeamIdentifierPrefix)com.lyndir.lhunath.MasterPassword.shared</string>
|
||||||
<key>com.apple.security.app-sandbox</key>
|
<key>com.apple.security.app-sandbox</key>
|
||||||
<true/>
|
<true/>
|
||||||
</dict>
|
</dict>
|
||||||
|
@ -6,8 +6,7 @@
|
|||||||
// Copyright (c) 2011 Lyndir. All rights reserved.
|
// Copyright (c) 2011 Lyndir. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#import "MPAppDelegate.h"
|
#import "MPAppDelegate_Shared.h"
|
||||||
#import "MPAppDelegate_Key.h"
|
|
||||||
|
|
||||||
#import "MPMainViewController.h"
|
#import "MPMainViewController.h"
|
||||||
#import "IASKSettingsReader.h"
|
#import "IASKSettingsReader.h"
|
||||||
@ -31,10 +30,6 @@
|
|||||||
|
|
||||||
@implementation MPAppDelegate
|
@implementation MPAppDelegate
|
||||||
|
|
||||||
@synthesize managedObjectModel = __managedObjectModel;
|
|
||||||
@synthesize managedObjectContext = __managedObjectContext;
|
|
||||||
@synthesize persistentStoreCoordinator = __persistentStoreCoordinator;
|
|
||||||
|
|
||||||
@synthesize key;
|
@synthesize key;
|
||||||
@synthesize keyHash;
|
@synthesize keyHash;
|
||||||
@synthesize keyHashHex;
|
@synthesize keyHashHex;
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
//
|
//
|
||||||
|
|
||||||
#import "MPGuideViewController.h"
|
#import "MPGuideViewController.h"
|
||||||
#import "MPAppDelegate_Key.h"
|
#import "MPAppDelegate_Shared.h"
|
||||||
|
|
||||||
@implementation MPGuideViewController
|
@implementation MPGuideViewController
|
||||||
@synthesize scrollView;
|
@synthesize scrollView;
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
//
|
//
|
||||||
|
|
||||||
#import "MPMainViewController.h"
|
#import "MPMainViewController.h"
|
||||||
#import "MPAppDelegate_Key.h"
|
#import "MPAppDelegate_Shared.h"
|
||||||
#import "MPElementGeneratedEntity.h"
|
#import "MPElementGeneratedEntity.h"
|
||||||
#import "MPElementStoredEntity.h"
|
#import "MPElementStoredEntity.h"
|
||||||
#import "IASKAppSettingsViewController.h"
|
#import "IASKAppSettingsViewController.h"
|
||||||
@ -411,6 +411,22 @@
|
|||||||
case 5:
|
case 5:
|
||||||
#else
|
#else
|
||||||
case 4:
|
case 4:
|
||||||
|
#endif
|
||||||
|
#ifdef DEBUG
|
||||||
|
{
|
||||||
|
[[MPAppDelegate get].storeManager hardResetCloudStorage];
|
||||||
|
}
|
||||||
|
#ifdef ADHOC
|
||||||
|
case 6: {
|
||||||
|
[[MPAppDelegate get].storeManager useiCloudStore:![MPAppDelegate get].storeManager.iCloudEnabled];
|
||||||
|
}
|
||||||
|
case 7:
|
||||||
|
#else
|
||||||
|
case 5: {
|
||||||
|
[[MPAppDelegate get].storeManager useiCloudStore:![MPAppDelegate get].storeManager.iCloudEnabled];
|
||||||
|
}
|
||||||
|
case 6:
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
{
|
{
|
||||||
[[MPAppDelegate get] signOut:self];
|
[[MPAppDelegate get] signOut:self];
|
||||||
@ -425,6 +441,10 @@
|
|||||||
[self isHelpVisible]? @"Hide Help": @"Show Help", @"FAQ", @"Tutorial", @"Settings",
|
[self isHelpVisible]? @"Hide Help": @"Show Help", @"FAQ", @"Tutorial", @"Settings",
|
||||||
#ifdef ADHOC
|
#ifdef ADHOC
|
||||||
@"Feedback",
|
@"Feedback",
|
||||||
|
#endif
|
||||||
|
#ifdef DEBUG
|
||||||
|
@"Reset iCloud",
|
||||||
|
@"Toggle iCloud",
|
||||||
#endif
|
#endif
|
||||||
@"Sign Out",
|
@"Sign Out",
|
||||||
nil];
|
nil];
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
//
|
//
|
||||||
|
|
||||||
#import "MPSearchDelegate.h"
|
#import "MPSearchDelegate.h"
|
||||||
#import "MPAppDelegate_Key.h"
|
#import "MPAppDelegate_Shared.h"
|
||||||
#import "MPElementGeneratedEntity.h"
|
#import "MPElementGeneratedEntity.h"
|
||||||
|
|
||||||
@interface MPSearchDelegate (Private)
|
@interface MPSearchDelegate (Private)
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
#import <QuartzCore/QuartzCore.h>
|
#import <QuartzCore/QuartzCore.h>
|
||||||
|
|
||||||
#import "MPUnlockViewController.h"
|
#import "MPUnlockViewController.h"
|
||||||
#import "MPAppDelegate_Key.h"
|
#import "MPAppDelegate_Shared.h"
|
||||||
|
|
||||||
typedef enum {
|
typedef enum {
|
||||||
MPLockscreenIdle,
|
MPLockscreenIdle,
|
||||||
|
@ -5,7 +5,10 @@
|
|||||||
<key>com.apple.developer.ubiquity-container-identifiers</key>
|
<key>com.apple.developer.ubiquity-container-identifiers</key>
|
||||||
<array>
|
<array>
|
||||||
<string>$(TeamIdentifierPrefix)com.lyndir.lhunath.MasterPassword</string>
|
<string>$(TeamIdentifierPrefix)com.lyndir.lhunath.MasterPassword</string>
|
||||||
|
<string>$(TeamIdentifierPrefix)com.lyndir.lhunath.MasterPassword.shared</string>
|
||||||
</array>
|
</array>
|
||||||
|
<key>com.apple.developer.ubiquity-kvstore-identifier</key>
|
||||||
|
<string>$(TeamIdentifierPrefix)com.lyndir.lhunath.MasterPassword.shared</string>
|
||||||
<key>keychain-access-groups</key>
|
<key>keychain-access-groups</key>
|
||||||
<array>
|
<array>
|
||||||
<string>$(AppIdentifierPrefix)com.lyndir.lhunath.MasterPassword</string>
|
<string>$(AppIdentifierPrefix)com.lyndir.lhunath.MasterPassword</string>
|
||||||
|
Loading…
Reference in New Issue
Block a user