Files
ProxyIOS/ProxyApp.xcodeproj/project.pbxproj
Trey t 148bc3887c Add iPad support, auto-pinning, and comprehensive logging
- Adaptive iPhone/iPad layout with NavigationSplitView sidebar
- Auto-detect SSL-pinned domains, fall back to passthrough
- Certificate install via local HTTP server (Safari profile flow)
- App Group-backed CA, per-domain leaf cert LRU cache
- DB-backed config repository, Darwin notification throttling
- Rules engine, breakpoint rules, pinned domain tracking
- os.Logger instrumentation across tunnel/proxy/mitm/capture/cert/rules/db/ipc/ui
- Fix dyld framework embed, race conditions, thread safety
2026-04-11 12:52:18 -05:00

1209 lines
66 KiB
Plaintext

// !$*UTF8*$!
{
archiveVersion = 1;
classes = {
};
objectVersion = 63;
objects = {
/* Begin PBXBuildFile section */
020C7E9BFD5FB376A5B5AB92 /* Constants.swift in Sources */ = {isa = PBXBuildFile; fileRef = F1E030EAC76D5AD8FFC4CE41 /* Constants.swift */; };
044C2A568C13E889BC2AE30C /* ProxyCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FFBBFDC8A74655F6BABEC8F2 /* ProxyCore.framework */; };
0472CBEB3A89C801E4057FBA /* ToggleHeaderView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C79DF53F3FB49209C5D4C072 /* ToggleHeaderView.swift */; };
0510F681F9E47AF338D0DCFF /* TrafficRowView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 075A09C6B272A53485322E22 /* TrafficRowView.swift */; };
078E6456816B5FD9C8F8693C /* NIOCore in Frameworks */ = {isa = PBXBuildFile; productRef = BE056A6D2498A5D37D3D654F /* NIOCore */; };
0AD1CD2C01C1818765918E79 /* GRDB in Frameworks */ = {isa = PBXBuildFile; productRef = 4984B6EFE9C646250BBC622F /* GRDB */; };
1032DF442393FF744C5D6CB7 /* ComposeListView.swift in Sources */ = {isa = PBXBuildFile; fileRef = ECBC2F9C7D32A3D7BA4AFDA9 /* ComposeListView.swift */; };
14B66ED5980D1C365A5F1492 /* FullResponseView.swift in Sources */ = {isa = PBXBuildFile; fileRef = E2979CAC28594BA43FDD20CE /* FullResponseView.swift */; };
161B0B0900010F54252B2D3D /* FilterChipsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F02A950CF29A22F5EC9BD3B /* FilterChipsView.swift */; };
1773C53EAEA72B3B586F9881 /* NIOCore in Frameworks */ = {isa = PBXBuildFile; productRef = 2DE391CB5A75FCC4AC9A7B64 /* NIOCore */; };
1B346F9DF3D2319ED2CE49BD /* AppSettingsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FC29FEF9E5C7AE175FE49A9 /* AppSettingsView.swift */; };
20E68EF40E3BA8131B479E55 /* AppLockView.swift in Sources */ = {isa = PBXBuildFile; fileRef = FDE456728047AE1A81104E30 /* AppLockView.swift */; };
2311FADAB0FC08035CD1199A /* ProxyRuntimeStatus.swift in Sources */ = {isa = PBXBuildFile; fileRef = 710EE134699388E09F8FEA04 /* ProxyRuntimeStatus.swift */; };
25DFC386BDBFC3B799E7ADCF /* DomainDetailView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 519A53ABF80C96A2F7BE48C0 /* DomainDetailView.swift */; };
261724F00B739E099F864897 /* NIOSSL in Frameworks */ = {isa = PBXBuildFile; productRef = F7677A32280A2AB999BBC1DA /* NIOSSL */; };
268C1BC427C7CC81DCF6C7C8 /* KeyValueRow.swift in Sources */ = {isa = PBXBuildFile; fileRef = A2D5D80F2ABE544DDA4D672F /* KeyValueRow.swift */; };
273250EA21F8FC1AAF587B57 /* JSONTreeView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 36B509AF6612E720D2D2C907 /* JSONTreeView.swift */; };
28E89C9BCF2C36DA2A513708 /* SelectableTextView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2B3627CA99CA08EDB8F960BF /* SelectableTextView.swift */; };
2D294CFFDB2FF485FDDF338E /* AdvancedSettingsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6DE284C06437A69DA262860D /* AdvancedSettingsView.swift */; };
34E1EA5C2AA423CB092D99B7 /* IPCManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4506DB95E7CB1AD63D7BDBFD /* IPCManager.swift */; };
36BA84C1E610292F4DC98D1A /* SSLProxyingListView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5D18045C7039E4D081D2E0FB /* SSLProxyingListView.swift */; };
3CFD7D055BAB97B819189496 /* SystemTrafficFilter.swift in Sources */ = {isa = PBXBuildFile; fileRef = DED7DD286592C95E02C2E5CD /* SystemTrafficFilter.swift */; };
3E0939BAB9A087647A8943A2 /* HomeView.swift in Sources */ = {isa = PBXBuildFile; fileRef = AB466F4510A96A63A4D28BB2 /* HomeView.swift */; };
41E9BEEBA72730B7D9B8DDA6 /* MITMHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = E7B122B086EE413B9FFA987D /* MITMHandler.swift */; };
44D7306C16BF67B232AE93A7 /* HeaderEditorSheet.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1E48DB7CB700107069A0B6E7 /* HeaderEditorSheet.swift */; };
4556109D775B65AC4D596E67 /* BreakpointRulesView.swift in Sources */ = {isa = PBXBuildFile; fileRef = F2E3E2A57818A9523AE4909C /* BreakpointRulesView.swift */; };
47FCBF7C704629E6760E1B0C /* RequestDetailView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 637C568F583A70F1B0F951AC /* RequestDetailView.swift */; };
488299CE2605314EE0C949AA /* AppGroupPaths.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2DE0F682D15A388E25E266F9 /* AppGroupPaths.swift */; };
4C1A9246FCBC2F86E0D33E10 /* ConnectHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 72C4B5CB3F4FD77839836ED4 /* ConnectHandler.swift */; };
56C49856550867A6DD6360A2 /* DNSSpoofRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = E8A7A619BD4FEF8FE1299DDD /* DNSSpoofRule.swift */; };
575E76B3A4C1FF71DCFA2A09 /* RulesEngine.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C88E06D884049204F768A14 /* RulesEngine.swift */; };
580734EA8A5E30B56AAD592C /* NIOHTTP1 in Frameworks */ = {isa = PBXBuildFile; productRef = 2C85D26D13198732391DB72A /* NIOHTTP1 */; };
58AEADB31F9ACB5A0B918A97 /* RuntimeStatusRepository.swift in Sources */ = {isa = PBXBuildFile; fileRef = 235CB8BE90C6FF4EE6F23629 /* RuntimeStatusRepository.swift */; };
59C38D09525034A6E4D4DDBE /* ComposeEditorView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 173FF6F938E59C6FD5733FED /* ComposeEditorView.swift */; };
5B66F70CBCE439C4E1A5D108 /* ProxyServer.swift in Sources */ = {isa = PBXBuildFile; fileRef = E8F864AD4A39C9F503DE3F13 /* ProxyServer.swift */; };
5CBD25190C3F1AED2CCD821A /* CapturedTraffic.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5235D9F2226096BF7BCCB45B /* CapturedTraffic.swift */; };
5CCD73D04194E548C72A9482 /* MapLocalView.swift in Sources */ = {isa = PBXBuildFile; fileRef = F6B4BCD97141A64AFC5E679A /* MapLocalView.swift */; };
60A7F6D2ED7CAFE06BDA05AB /* NIOPosix in Frameworks */ = {isa = PBXBuildFile; productRef = 8FADF83FADCE3702AFCC45C9 /* NIOPosix */; };
67A1B4E0EF5F307638959DD8 /* MoreView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 27159F89C452CEF6FFE21FC9 /* MoreView.swift */; };
6AD008CC5844A43CF575C1C1 /* QueryEditorSheet.swift in Sources */ = {isa = PBXBuildFile; fileRef = D129A31ADDFEA3A09C64EBC6 /* QueryEditorSheet.swift */; };
6F9A607918651BB36266193A /* WildcardMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = E026D97293D56740403666A3 /* WildcardMatcher.swift */; };
7034A0C2F5A8CDC56360D73A /* PacketTunnelProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 097285BB4EF5D3115F7F09BF /* PacketTunnelProvider.swift */; };
71D9DEC1148AED65248D4C81 /* NIOSSL in Frameworks */ = {isa = PBXBuildFile; productRef = 9B2A586748D557D26CE9C75D /* NIOSSL */; };
73197B515ABE80AB74BC232A /* MapLocalRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAEBD24F668D1AA572F4A669 /* MapLocalRule.swift */; };
771183F6D74FBD03BC8DC686 /* NotificationThrottle.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8BB2EFF2D0A3A7DCB9007021 /* NotificationThrottle.swift */; };
777697FE6E08DFBC5CCCFDA9 /* PinnedDomainRepository.swift in Sources */ = {isa = PBXBuildFile; fileRef = 362D8C1620E15594C41D214E /* PinnedDomainRepository.swift */; };
79FE52B43CBAF0F42EAA5926 /* DomainGroup.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2704184BD5C72B01D95A6BD8 /* DomainGroup.swift */; };
80B683DD5BDBF9C1F6A512E6 /* BlockListEntry.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2F228CD8526A2D7CD3F283A4 /* BlockListEntry.swift */; };
8258F5ED1BD2A12C52FED4EE /* ProxyApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67F12E77EB9B01FFC29EE452 /* ProxyApp.swift */; };
8B71F895F74E16DA92D557DE /* GRDB in Frameworks */ = {isa = PBXBuildFile; productRef = 425205F9256BA5CD3D743B30 /* GRDB */; };
91A5B9A95AFF29C206B8B495 /* HexView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 872AA1A5DF7FA7D3D99C810E /* HexView.swift */; };
9368026FF53296BDD315D114 /* NIOExtras in Frameworks */ = {isa = PBXBuildFile; productRef = E3702F97C3DF37F2C4BEE30C /* NIOExtras */; };
99B97DA715D9B1B3E9FD12A9 /* NIOHTTP1 in Frameworks */ = {isa = PBXBuildFile; productRef = 74FAB262A4E71F9B9DF02DE5 /* NIOHTTP1 */; };
9A5AD5BB0DA413AF852084EF /* X509 in Frameworks */ = {isa = PBXBuildFile; productRef = 302E511C58383FFA46C46C1A /* X509 */; };
9A91E027039087C8E07F224B /* CURLImportView.swift in Sources */ = {isa = PBXBuildFile; fileRef = DEE5A751E8F7842716D8D9C5 /* CURLImportView.swift */; };
9D2AF127D52466CC1DF030C7 /* RulesRepository.swift in Sources */ = {isa = PBXBuildFile; fileRef = 074C4C0E9529236CB373091C /* RulesRepository.swift */; };
9E7B90C28927E808B6EE8275 /* SSLProxyingEntry.swift in Sources */ = {isa = PBXBuildFile; fileRef = D69E8CA968380EEC4CEEAC58 /* SSLProxyingEntry.swift */; };
A946C1681FB46D11AA6912B0 /* AppState.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAC65A5C14A2D9474DC55BAD /* AppState.swift */; };
AA23DE16F97A24279BBC6C1E /* BlockListView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A9C7DCE312827E925D474D1C /* BlockListView.swift */; };
AA32CFF139FE1EE996452DB1 /* NIOHTTP1 in Frameworks */ = {isa = PBXBuildFile; productRef = 8A99B87B3538F636F618F358 /* NIOHTTP1 */; };
AB7825AE02AFC8C30B87CB6D /* CertificateManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 66E52853A3CF25765660F938 /* CertificateManager.swift */; };
AB808FC6FBA5DB69260AD642 /* PacketTunnel.appex in Embed Foundation Extensions */ = {isa = PBXBuildFile; fileRef = FE274B16256054C197609357 /* PacketTunnel.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; };
AD0314CCE960088687E23B9C /* DNSSpoofingView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 28FE75F0F15AA8A6A47422D5 /* DNSSpoofingView.swift */; };
AE4846E36ACE9F748967FEE7 /* NIOCore in Frameworks */ = {isa = PBXBuildFile; productRef = 8F906D014F34C26B78E90B76 /* NIOCore */; };
AE4AEED1C775E143C8E364AB /* StatusBadge.swift in Sources */ = {isa = PBXBuildFile; fileRef = F23D9B9787A45AF89ED0ACD1 /* StatusBadge.swift */; };
AE6439B7C988FC159CBFBC11 /* PinnedDomain.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4DFF88D20F555DFB1BCD079C /* PinnedDomain.swift */; };
AF58844E5F07109BAF1A9FBA /* X509 in Frameworks */ = {isa = PBXBuildFile; productRef = D872B7228838C504D217B061 /* X509 */; };
B1ED1B3C0D80C2D0DCD48EBF /* MethodBadge.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52F71C43C1B985E45828AF13 /* MethodBadge.swift */; };
B703C5C4402C3821B94FED7F /* ComposeRequest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 777EEE35DFFD4F3411B3FCE3 /* ComposeRequest.swift */; };
B7E0A7EDA5ECD495D8AE1B1F /* TrafficRepository.swift in Sources */ = {isa = PBXBuildFile; fileRef = 86F3E254F52DA9F9345B69FF /* TrafficRepository.swift */; };
BB1A565DEF2504F7B1031366 /* NoCachingView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6897481A0E0AFC428D7B0760 /* NoCachingView.swift */; };
BBFB2C1995747DBD3B1A322B /* DatabaseManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E977B7F6D1876286BD79D75 /* DatabaseManager.swift */; };
BEFC3E0A75A2012829208A94 /* ProxyCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FFBBFDC8A74655F6BABEC8F2 /* ProxyCore.framework */; };
BF30AC37B886A0CBC171CC0C /* NIOPosix in Frameworks */ = {isa = PBXBuildFile; productRef = 7ACEE8638C00CA74E27095D3 /* NIOPosix */; };
C07BCF735C7ED4DDC54CED7A /* GlueHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = A0874F5DFE7C72F953E6FC41 /* GlueHandler.swift */; };
C659BA93C402A36E3E108706 /* ContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 15B1AA944B076F281D2926BA /* ContentView.swift */; };
CA9312C98F79DD310CF97193 /* NIOExtras in Frameworks */ = {isa = PBXBuildFile; productRef = 9FBB9D83DA8C2BD34605DD8F /* NIOExtras */; };
D5F263D81C5381B39E3D92D9 /* GRDB in Frameworks */ = {isa = PBXBuildFile; productRef = B23BF84F58802C2FD4181AD2 /* GRDB */; };
D7D0DED251BC60F65CA595BC /* EmptyStateView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7AF0747C1BE12B4259866382 /* EmptyStateView.swift */; };
DEC2257E2B9263AA09F9EF2C /* NIOSSL in Frameworks */ = {isa = PBXBuildFile; productRef = 2C7F42CDC12F03C0FDD6539A /* NIOSSL */; };
E36D7B872F13A4CB0DCBBC44 /* HTTPBodyDecoder.swift in Sources */ = {isa = PBXBuildFile; fileRef = B395BEF3848DE00AAC48304C /* HTTPBodyDecoder.swift */; };
E51E4D4ABE03C86CAC2A3803 /* ConfigurationRepository.swift in Sources */ = {isa = PBXBuildFile; fileRef = 76714FEFFCCDE8C3A78AEEFF /* ConfigurationRepository.swift */; };
E7497BB12483B0928783579F /* CertificateView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1C130891674901F95EFF6C10 /* CertificateView.swift */; };
E7AA10E880398BCC7E2642EC /* CURLParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = B38485B7FCE595D168C1C846 /* CURLParser.swift */; };
E9D761ACA5FF7955B5BDCBA4 /* NIOExtras in Frameworks */ = {isa = PBXBuildFile; productRef = 11DB0A1E449F691613E238DE /* NIOExtras */; };
EABEAF43B23210EAC0023B33 /* PinnedDomainsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 88DB54F1CF988A0D2204F6AC /* PinnedDomainsView.swift */; };
EC3F750A051B55A202E26571 /* ProxyConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13CAEAE036BBFFA8715EACFD /* ProxyConfiguration.swift */; };
F32E1472628FC2FD12CC833C /* BreakpointRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 11F4B5CB6D7868661D6846B1 /* BreakpointRule.swift */; };
F38240D6A5DF02C96345910F /* ComposeRepository.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD6BDB66B8FF54D24E75D9DA /* ComposeRepository.swift */; };
F5EA05A3520645ABD5FD6266 /* NIOPosix in Frameworks */ = {isa = PBXBuildFile; productRef = 2B0A2F194C23CE100A7B16B6 /* NIOPosix */; };
F7518FEFC1BD4D9C494E77E6 /* ProxyLogger.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD4DA7994BF0161D6DCD4BEC /* ProxyLogger.swift */; };
FA65F94CE9CC44A2E3D5BABC /* Crypto in Frameworks */ = {isa = PBXBuildFile; productRef = 13768686350369739100F57B /* Crypto */; };
FD565FCB905CB38529F4AF19 /* HTTPCaptureHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = A1F1AF90F2B1B2004D34587E /* HTTPCaptureHandler.swift */; };
FF47A342C5D326B1CDFBA554 /* PinView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8C1921178726BCFB9689CD40 /* PinView.swift */; };
FF490C33F07B362A6E3A04C9 /* Crypto in Frameworks */ = {isa = PBXBuildFile; productRef = ED925608F42DF4F167F4AD6A /* Crypto */; };
FF970F984CE302E0099E94B1 /* SetupGuideView.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAF1EADE5958349770CE6D69 /* SetupGuideView.swift */; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
2B8DDC710BD3430C82E5C684 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 7FA5FB810CD14E3EF2830B5F /* Project object */;
proxyType = 1;
remoteGlobalIDString = C707902F2AC99A166223934F;
remoteInfo = PacketTunnel;
};
60D47013E91CCA78687C2E90 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 7FA5FB810CD14E3EF2830B5F /* Project object */;
proxyType = 1;
remoteGlobalIDString = 70F9CA505ABDF65D6F84D6DD;
remoteInfo = ProxyCore;
};
A1EB54C0FEF9ECCB84D0656A /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 7FA5FB810CD14E3EF2830B5F /* Project object */;
proxyType = 1;
remoteGlobalIDString = 70F9CA505ABDF65D6F84D6DD;
remoteInfo = ProxyCore;
};
/* End PBXContainerItemProxy section */
/* Begin PBXCopyFilesBuildPhase section */
18983BA864E985F5D52307F7 /* Embed Foundation Extensions */ = {
isa = PBXCopyFilesBuildPhase;
buildActionMask = 2147483647;
dstPath = "";
dstSubfolderSpec = 13;
files = (
AB808FC6FBA5DB69260AD642 /* PacketTunnel.appex in Embed Foundation Extensions */,
);
name = "Embed Foundation Extensions";
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXCopyFilesBuildPhase section */
/* Begin PBXFileReference section */
0235538D05FCD58BB88004AB /* ProxyApp.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = ProxyApp.app; sourceTree = BUILT_PRODUCTS_DIR; };
074C4C0E9529236CB373091C /* RulesRepository.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RulesRepository.swift; sourceTree = "<group>"; };
075A09C6B272A53485322E22 /* TrafficRowView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TrafficRowView.swift; sourceTree = "<group>"; };
097285BB4EF5D3115F7F09BF /* PacketTunnelProvider.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PacketTunnelProvider.swift; sourceTree = "<group>"; };
11F4B5CB6D7868661D6846B1 /* BreakpointRule.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BreakpointRule.swift; sourceTree = "<group>"; };
13CAEAE036BBFFA8715EACFD /* ProxyConfiguration.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ProxyConfiguration.swift; sourceTree = "<group>"; };
15B1AA944B076F281D2926BA /* ContentView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContentView.swift; sourceTree = "<group>"; };
173FF6F938E59C6FD5733FED /* ComposeEditorView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ComposeEditorView.swift; sourceTree = "<group>"; };
1C130891674901F95EFF6C10 /* CertificateView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CertificateView.swift; sourceTree = "<group>"; };
1E48DB7CB700107069A0B6E7 /* HeaderEditorSheet.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HeaderEditorSheet.swift; sourceTree = "<group>"; };
235CB8BE90C6FF4EE6F23629 /* RuntimeStatusRepository.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RuntimeStatusRepository.swift; sourceTree = "<group>"; };
2704184BD5C72B01D95A6BD8 /* DomainGroup.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DomainGroup.swift; sourceTree = "<group>"; };
27159F89C452CEF6FFE21FC9 /* MoreView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MoreView.swift; sourceTree = "<group>"; };
28FE75F0F15AA8A6A47422D5 /* DNSSpoofingView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DNSSpoofingView.swift; sourceTree = "<group>"; };
2B3627CA99CA08EDB8F960BF /* SelectableTextView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SelectableTextView.swift; sourceTree = "<group>"; };
2DE0F682D15A388E25E266F9 /* AppGroupPaths.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppGroupPaths.swift; sourceTree = "<group>"; };
2F228CD8526A2D7CD3F283A4 /* BlockListEntry.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BlockListEntry.swift; sourceTree = "<group>"; };
362D8C1620E15594C41D214E /* PinnedDomainRepository.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PinnedDomainRepository.swift; sourceTree = "<group>"; };
36B509AF6612E720D2D2C907 /* JSONTreeView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JSONTreeView.swift; sourceTree = "<group>"; };
4506DB95E7CB1AD63D7BDBFD /* IPCManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = IPCManager.swift; sourceTree = "<group>"; };
4C88E06D884049204F768A14 /* RulesEngine.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RulesEngine.swift; sourceTree = "<group>"; };
4DFF88D20F555DFB1BCD079C /* PinnedDomain.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PinnedDomain.swift; sourceTree = "<group>"; };
519A53ABF80C96A2F7BE48C0 /* DomainDetailView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DomainDetailView.swift; sourceTree = "<group>"; };
5235D9F2226096BF7BCCB45B /* CapturedTraffic.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CapturedTraffic.swift; sourceTree = "<group>"; };
52F71C43C1B985E45828AF13 /* MethodBadge.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MethodBadge.swift; sourceTree = "<group>"; };
5D18045C7039E4D081D2E0FB /* SSLProxyingListView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SSLProxyingListView.swift; sourceTree = "<group>"; };
637C568F583A70F1B0F951AC /* RequestDetailView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RequestDetailView.swift; sourceTree = "<group>"; };
66E52853A3CF25765660F938 /* CertificateManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CertificateManager.swift; sourceTree = "<group>"; };
67F12E77EB9B01FFC29EE452 /* ProxyApp.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ProxyApp.swift; sourceTree = "<group>"; };
6897481A0E0AFC428D7B0760 /* NoCachingView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoCachingView.swift; sourceTree = "<group>"; };
6DE284C06437A69DA262860D /* AdvancedSettingsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdvancedSettingsView.swift; sourceTree = "<group>"; };
6F02A950CF29A22F5EC9BD3B /* FilterChipsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FilterChipsView.swift; sourceTree = "<group>"; };
6FC29FEF9E5C7AE175FE49A9 /* AppSettingsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppSettingsView.swift; sourceTree = "<group>"; };
710EE134699388E09F8FEA04 /* ProxyRuntimeStatus.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ProxyRuntimeStatus.swift; sourceTree = "<group>"; };
72C4B5CB3F4FD77839836ED4 /* ConnectHandler.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ConnectHandler.swift; sourceTree = "<group>"; };
76714FEFFCCDE8C3A78AEEFF /* ConfigurationRepository.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ConfigurationRepository.swift; sourceTree = "<group>"; };
777EEE35DFFD4F3411B3FCE3 /* ComposeRequest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ComposeRequest.swift; sourceTree = "<group>"; };
7AF0747C1BE12B4259866382 /* EmptyStateView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EmptyStateView.swift; sourceTree = "<group>"; };
86F3E254F52DA9F9345B69FF /* TrafficRepository.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TrafficRepository.swift; sourceTree = "<group>"; };
872AA1A5DF7FA7D3D99C810E /* HexView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HexView.swift; sourceTree = "<group>"; };
88DB54F1CF988A0D2204F6AC /* PinnedDomainsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PinnedDomainsView.swift; sourceTree = "<group>"; };
8BB2EFF2D0A3A7DCB9007021 /* NotificationThrottle.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NotificationThrottle.swift; sourceTree = "<group>"; };
8C1921178726BCFB9689CD40 /* PinView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PinView.swift; sourceTree = "<group>"; };
8E977B7F6D1876286BD79D75 /* DatabaseManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DatabaseManager.swift; sourceTree = "<group>"; };
A0874F5DFE7C72F953E6FC41 /* GlueHandler.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GlueHandler.swift; sourceTree = "<group>"; };
A1F1AF90F2B1B2004D34587E /* HTTPCaptureHandler.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HTTPCaptureHandler.swift; sourceTree = "<group>"; };
A2D5D80F2ABE544DDA4D672F /* KeyValueRow.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KeyValueRow.swift; sourceTree = "<group>"; };
A9C7DCE312827E925D474D1C /* BlockListView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BlockListView.swift; sourceTree = "<group>"; };
AB466F4510A96A63A4D28BB2 /* HomeView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomeView.swift; sourceTree = "<group>"; };
B2FD8501FF5549114D704AED /* PacketTunnel.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = PacketTunnel.entitlements; sourceTree = "<group>"; };
B38485B7FCE595D168C1C846 /* CURLParser.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CURLParser.swift; sourceTree = "<group>"; };
B395BEF3848DE00AAC48304C /* HTTPBodyDecoder.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HTTPBodyDecoder.swift; sourceTree = "<group>"; };
C79DF53F3FB49209C5D4C072 /* ToggleHeaderView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ToggleHeaderView.swift; sourceTree = "<group>"; };
D129A31ADDFEA3A09C64EBC6 /* QueryEditorSheet.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = QueryEditorSheet.swift; sourceTree = "<group>"; };
D2BB3537EE02470EC6CF8856 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; };
D69E8CA968380EEC4CEEAC58 /* SSLProxyingEntry.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SSLProxyingEntry.swift; sourceTree = "<group>"; };
DAC65A5C14A2D9474DC55BAD /* AppState.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppState.swift; sourceTree = "<group>"; };
DAEBD24F668D1AA572F4A669 /* MapLocalRule.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MapLocalRule.swift; sourceTree = "<group>"; };
DD4DA7994BF0161D6DCD4BEC /* ProxyLogger.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ProxyLogger.swift; sourceTree = "<group>"; };
DD774DF1EE6D16C71CDBDE39 /* ProxyApp.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = ProxyApp.entitlements; sourceTree = "<group>"; };
DED7DD286592C95E02C2E5CD /* SystemTrafficFilter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SystemTrafficFilter.swift; sourceTree = "<group>"; };
DEE5A751E8F7842716D8D9C5 /* CURLImportView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CURLImportView.swift; sourceTree = "<group>"; };
E026D97293D56740403666A3 /* WildcardMatcher.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WildcardMatcher.swift; sourceTree = "<group>"; };
E2979CAC28594BA43FDD20CE /* FullResponseView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FullResponseView.swift; sourceTree = "<group>"; };
E7B122B086EE413B9FFA987D /* MITMHandler.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MITMHandler.swift; sourceTree = "<group>"; };
E8A7A619BD4FEF8FE1299DDD /* DNSSpoofRule.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DNSSpoofRule.swift; sourceTree = "<group>"; };
E8F864AD4A39C9F503DE3F13 /* ProxyServer.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ProxyServer.swift; sourceTree = "<group>"; };
ECBC2F9C7D32A3D7BA4AFDA9 /* ComposeListView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ComposeListView.swift; sourceTree = "<group>"; };
EF5C063A725B07CB7B19654C /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; };
F1E030EAC76D5AD8FFC4CE41 /* Constants.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Constants.swift; sourceTree = "<group>"; };
F23D9B9787A45AF89ED0ACD1 /* StatusBadge.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StatusBadge.swift; sourceTree = "<group>"; };
F2E3E2A57818A9523AE4909C /* BreakpointRulesView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BreakpointRulesView.swift; sourceTree = "<group>"; };
F6B4BCD97141A64AFC5E679A /* MapLocalView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MapLocalView.swift; sourceTree = "<group>"; };
FAF1EADE5958349770CE6D69 /* SetupGuideView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SetupGuideView.swift; sourceTree = "<group>"; };
FD6BDB66B8FF54D24E75D9DA /* ComposeRepository.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ComposeRepository.swift; sourceTree = "<group>"; };
FDE456728047AE1A81104E30 /* AppLockView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppLockView.swift; sourceTree = "<group>"; };
FE274B16256054C197609357 /* PacketTunnel.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = PacketTunnel.appex; sourceTree = BUILT_PRODUCTS_DIR; };
FFBBFDC8A74655F6BABEC8F2 /* ProxyCore.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = ProxyCore.framework; sourceTree = BUILT_PRODUCTS_DIR; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
05D57CEC5B368CD87F234174 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
D5F263D81C5381B39E3D92D9 /* GRDB in Frameworks */,
1773C53EAEA72B3B586F9881 /* NIOCore in Frameworks */,
BF30AC37B886A0CBC171CC0C /* NIOPosix in Frameworks */,
261724F00B739E099F864897 /* NIOSSL in Frameworks */,
AA32CFF139FE1EE996452DB1 /* NIOHTTP1 in Frameworks */,
9368026FF53296BDD315D114 /* NIOExtras in Frameworks */,
9A5AD5BB0DA413AF852084EF /* X509 in Frameworks */,
FF490C33F07B362A6E3A04C9 /* Crypto in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
3559DCAAF7D3A7EA0BECE73A /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
044C2A568C13E889BC2AE30C /* ProxyCore.framework in Frameworks */,
8B71F895F74E16DA92D557DE /* GRDB in Frameworks */,
AE4846E36ACE9F748967FEE7 /* NIOCore in Frameworks */,
60A7F6D2ED7CAFE06BDA05AB /* NIOPosix in Frameworks */,
71D9DEC1148AED65248D4C81 /* NIOSSL in Frameworks */,
99B97DA715D9B1B3E9FD12A9 /* NIOHTTP1 in Frameworks */,
CA9312C98F79DD310CF97193 /* NIOExtras in Frameworks */,
AF58844E5F07109BAF1A9FBA /* X509 in Frameworks */,
FA65F94CE9CC44A2E3D5BABC /* Crypto in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
91899A80204278D56425775F /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
BEFC3E0A75A2012829208A94 /* ProxyCore.framework in Frameworks */,
0AD1CD2C01C1818765918E79 /* GRDB in Frameworks */,
078E6456816B5FD9C8F8693C /* NIOCore in Frameworks */,
F5EA05A3520645ABD5FD6266 /* NIOPosix in Frameworks */,
DEC2257E2B9263AA09F9EF2C /* NIOSSL in Frameworks */,
580734EA8A5E30B56AAD592C /* NIOHTTP1 in Frameworks */,
E9D761ACA5FF7955B5BDCBA4 /* NIOExtras in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
07551BC26B6F4B61A9429EC5 /* SharedComponents */ = {
isa = PBXGroup;
children = (
7AF0747C1BE12B4259866382 /* EmptyStateView.swift */,
6F02A950CF29A22F5EC9BD3B /* FilterChipsView.swift */,
872AA1A5DF7FA7D3D99C810E /* HexView.swift */,
36B509AF6612E720D2D2C907 /* JSONTreeView.swift */,
A2D5D80F2ABE544DDA4D672F /* KeyValueRow.swift */,
52F71C43C1B985E45828AF13 /* MethodBadge.swift */,
2B3627CA99CA08EDB8F960BF /* SelectableTextView.swift */,
F23D9B9787A45AF89ED0ACD1 /* StatusBadge.swift */,
C79DF53F3FB49209C5D4C072 /* ToggleHeaderView.swift */,
);
path = SharedComponents;
sourceTree = "<group>";
};
1114887FD8B2F9A6BE0E4475 /* More */ = {
isa = PBXGroup;
children = (
6DE284C06437A69DA262860D /* AdvancedSettingsView.swift */,
FDE456728047AE1A81104E30 /* AppLockView.swift */,
6FC29FEF9E5C7AE175FE49A9 /* AppSettingsView.swift */,
A9C7DCE312827E925D474D1C /* BlockListView.swift */,
F2E3E2A57818A9523AE4909C /* BreakpointRulesView.swift */,
1C130891674901F95EFF6C10 /* CertificateView.swift */,
28FE75F0F15AA8A6A47422D5 /* DNSSpoofingView.swift */,
F6B4BCD97141A64AFC5E679A /* MapLocalView.swift */,
27159F89C452CEF6FFE21FC9 /* MoreView.swift */,
6897481A0E0AFC428D7B0760 /* NoCachingView.swift */,
88DB54F1CF988A0D2204F6AC /* PinnedDomainsView.swift */,
FAF1EADE5958349770CE6D69 /* SetupGuideView.swift */,
5D18045C7039E4D081D2E0FB /* SSLProxyingListView.swift */,
);
path = More;
sourceTree = "<group>";
};
1354E8EF36D80616DEF747E3 /* Compose */ = {
isa = PBXGroup;
children = (
173FF6F938E59C6FD5733FED /* ComposeEditorView.swift */,
ECBC2F9C7D32A3D7BA4AFDA9 /* ComposeListView.swift */,
DEE5A751E8F7842716D8D9C5 /* CURLImportView.swift */,
E2979CAC28594BA43FDD20CE /* FullResponseView.swift */,
1E48DB7CB700107069A0B6E7 /* HeaderEditorSheet.swift */,
D129A31ADDFEA3A09C64EBC6 /* QueryEditorSheet.swift */,
);
path = Compose;
sourceTree = "<group>";
};
41BB88F9F406199D5494FDEF /* PacketTunnel */ = {
isa = PBXGroup;
children = (
EF5C063A725B07CB7B19654C /* Info.plist */,
097285BB4EF5D3115F7F09BF /* PacketTunnelProvider.swift */,
BA08A8A12533E665A72EB416 /* Entitlements */,
);
path = PacketTunnel;
sourceTree = "<group>";
};
49CFB7F3A8DD44B9313FC99D /* Products */ = {
isa = PBXGroup;
children = (
FE274B16256054C197609357 /* PacketTunnel.appex */,
0235538D05FCD58BB88004AB /* ProxyApp.app */,
FFBBFDC8A74655F6BABEC8F2 /* ProxyCore.framework */,
);
name = Products;
sourceTree = "<group>";
};
61BD1E354028B533324024ED /* UI */ = {
isa = PBXGroup;
children = (
1354E8EF36D80616DEF747E3 /* Compose */,
FDCBA9B2A31EC97076464FAF /* Home */,
1114887FD8B2F9A6BE0E4475 /* More */,
893A350BEF5F6EA2C78852B3 /* Pin */,
07551BC26B6F4B61A9429EC5 /* SharedComponents */,
);
path = UI;
sourceTree = "<group>";
};
893A350BEF5F6EA2C78852B3 /* Pin */ = {
isa = PBXGroup;
children = (
8C1921178726BCFB9689CD40 /* PinView.swift */,
);
path = Pin;
sourceTree = "<group>";
};
959F93E4BA49D780759AC4AE /* Models */ = {
isa = PBXGroup;
children = (
2F228CD8526A2D7CD3F283A4 /* BlockListEntry.swift */,
11F4B5CB6D7868661D6846B1 /* BreakpointRule.swift */,
5235D9F2226096BF7BCCB45B /* CapturedTraffic.swift */,
777EEE35DFFD4F3411B3FCE3 /* ComposeRequest.swift */,
E8A7A619BD4FEF8FE1299DDD /* DNSSpoofRule.swift */,
2704184BD5C72B01D95A6BD8 /* DomainGroup.swift */,
DAEBD24F668D1AA572F4A669 /* MapLocalRule.swift */,
4DFF88D20F555DFB1BCD079C /* PinnedDomain.swift */,
13CAEAE036BBFFA8715EACFD /* ProxyConfiguration.swift */,
710EE134699388E09F8FEA04 /* ProxyRuntimeStatus.swift */,
D69E8CA968380EEC4CEEAC58 /* SSLProxyingEntry.swift */,
);
path = Models;
sourceTree = "<group>";
};
96CBCE24BD025F4D914BA359 /* ProxyEngine */ = {
isa = PBXGroup;
children = (
66E52853A3CF25765660F938 /* CertificateManager.swift */,
72C4B5CB3F4FD77839836ED4 /* ConnectHandler.swift */,
A0874F5DFE7C72F953E6FC41 /* GlueHandler.swift */,
A1F1AF90F2B1B2004D34587E /* HTTPCaptureHandler.swift */,
E7B122B086EE413B9FFA987D /* MITMHandler.swift */,
E8F864AD4A39C9F503DE3F13 /* ProxyServer.swift */,
4C88E06D884049204F768A14 /* RulesEngine.swift */,
);
path = ProxyEngine;
sourceTree = "<group>";
};
A1D2A318294056A02B3D0036 /* App */ = {
isa = PBXGroup;
children = (
DAC65A5C14A2D9474DC55BAD /* AppState.swift */,
15B1AA944B076F281D2926BA /* ContentView.swift */,
D2BB3537EE02470EC6CF8856 /* Info.plist */,
67F12E77EB9B01FFC29EE452 /* ProxyApp.swift */,
D271C91E25E2194956FDDE81 /* Entitlements */,
);
path = App;
sourceTree = "<group>";
};
B4D9B6568773EF994E3C6A59 /* DataLayer */ = {
isa = PBXGroup;
children = (
CE58B911DDD796742F2596AE /* Database */,
959F93E4BA49D780759AC4AE /* Models */,
BB4DFD21307BDCB7FACE8BFF /* Repositories */,
);
path = DataLayer;
sourceTree = "<group>";
};
BA08A8A12533E665A72EB416 /* Entitlements */ = {
isa = PBXGroup;
children = (
B2FD8501FF5549114D704AED /* PacketTunnel.entitlements */,
);
path = Entitlements;
sourceTree = "<group>";
};
BB4DFD21307BDCB7FACE8BFF /* Repositories */ = {
isa = PBXGroup;
children = (
FD6BDB66B8FF54D24E75D9DA /* ComposeRepository.swift */,
76714FEFFCCDE8C3A78AEEFF /* ConfigurationRepository.swift */,
362D8C1620E15594C41D214E /* PinnedDomainRepository.swift */,
074C4C0E9529236CB373091C /* RulesRepository.swift */,
235CB8BE90C6FF4EE6F23629 /* RuntimeStatusRepository.swift */,
86F3E254F52DA9F9345B69FF /* TrafficRepository.swift */,
);
path = Repositories;
sourceTree = "<group>";
};
CE58B911DDD796742F2596AE /* Database */ = {
isa = PBXGroup;
children = (
8E977B7F6D1876286BD79D75 /* DatabaseManager.swift */,
);
path = Database;
sourceTree = "<group>";
};
D271C91E25E2194956FDDE81 /* Entitlements */ = {
isa = PBXGroup;
children = (
DD774DF1EE6D16C71CDBDE39 /* ProxyApp.entitlements */,
);
path = Entitlements;
sourceTree = "<group>";
};
DB5183BCE0B690BE0937F924 /* Shared */ = {
isa = PBXGroup;
children = (
2DE0F682D15A388E25E266F9 /* AppGroupPaths.swift */,
F1E030EAC76D5AD8FFC4CE41 /* Constants.swift */,
B38485B7FCE595D168C1C846 /* CURLParser.swift */,
B395BEF3848DE00AAC48304C /* HTTPBodyDecoder.swift */,
4506DB95E7CB1AD63D7BDBFD /* IPCManager.swift */,
8BB2EFF2D0A3A7DCB9007021 /* NotificationThrottle.swift */,
DD4DA7994BF0161D6DCD4BEC /* ProxyLogger.swift */,
DED7DD286592C95E02C2E5CD /* SystemTrafficFilter.swift */,
E026D97293D56740403666A3 /* WildcardMatcher.swift */,
);
path = Shared;
sourceTree = "<group>";
};
F4DC7647CDACD11EA806CCBC = {
isa = PBXGroup;
children = (
A1D2A318294056A02B3D0036 /* App */,
41BB88F9F406199D5494FDEF /* PacketTunnel */,
F612ECA9542143613CE9F8F0 /* Sources */,
61BD1E354028B533324024ED /* UI */,
49CFB7F3A8DD44B9313FC99D /* Products */,
);
sourceTree = "<group>";
};
F612ECA9542143613CE9F8F0 /* Sources */ = {
isa = PBXGroup;
children = (
B4D9B6568773EF994E3C6A59 /* DataLayer */,
96CBCE24BD025F4D914BA359 /* ProxyEngine */,
DB5183BCE0B690BE0937F924 /* Shared */,
);
name = Sources;
path = ProxyCore/Sources;
sourceTree = "<group>";
};
FDCBA9B2A31EC97076464FAF /* Home */ = {
isa = PBXGroup;
children = (
519A53ABF80C96A2F7BE48C0 /* DomainDetailView.swift */,
AB466F4510A96A63A4D28BB2 /* HomeView.swift */,
637C568F583A70F1B0F951AC /* RequestDetailView.swift */,
075A09C6B272A53485322E22 /* TrafficRowView.swift */,
);
path = Home;
sourceTree = "<group>";
};
/* End PBXGroup section */
/* Begin PBXNativeTarget section */
2300A5AA6E7BFEFBD7C0D1ED /* ProxyApp */ = {
isa = PBXNativeTarget;
buildConfigurationList = EC03B67BCA3C49D1F9E3F538 /* Build configuration list for PBXNativeTarget "ProxyApp" */;
buildPhases = (
AF5D1EED56C2B32DDC71C5A4 /* Sources */,
3559DCAAF7D3A7EA0BECE73A /* Frameworks */,
18983BA864E985F5D52307F7 /* Embed Foundation Extensions */,
);
buildRules = (
);
dependencies = (
C4AF7000670A7653D7E85327 /* PBXTargetDependency */,
DE40559C9728CDCE427D8996 /* PBXTargetDependency */,
);
name = ProxyApp;
packageProductDependencies = (
425205F9256BA5CD3D743B30 /* GRDB */,
8F906D014F34C26B78E90B76 /* NIOCore */,
8FADF83FADCE3702AFCC45C9 /* NIOPosix */,
9B2A586748D557D26CE9C75D /* NIOSSL */,
74FAB262A4E71F9B9DF02DE5 /* NIOHTTP1 */,
9FBB9D83DA8C2BD34605DD8F /* NIOExtras */,
D872B7228838C504D217B061 /* X509 */,
13768686350369739100F57B /* Crypto */,
);
productName = ProxyApp;
productReference = 0235538D05FCD58BB88004AB /* ProxyApp.app */;
productType = "com.apple.product-type.application";
};
70F9CA505ABDF65D6F84D6DD /* ProxyCore */ = {
isa = PBXNativeTarget;
buildConfigurationList = A71CD7086139EDA325C7C633 /* Build configuration list for PBXNativeTarget "ProxyCore" */;
buildPhases = (
A1AF215119C2E806EC455036 /* Sources */,
05D57CEC5B368CD87F234174 /* Frameworks */,
);
buildRules = (
);
dependencies = (
);
name = ProxyCore;
packageProductDependencies = (
B23BF84F58802C2FD4181AD2 /* GRDB */,
2DE391CB5A75FCC4AC9A7B64 /* NIOCore */,
7ACEE8638C00CA74E27095D3 /* NIOPosix */,
F7677A32280A2AB999BBC1DA /* NIOSSL */,
8A99B87B3538F636F618F358 /* NIOHTTP1 */,
E3702F97C3DF37F2C4BEE30C /* NIOExtras */,
302E511C58383FFA46C46C1A /* X509 */,
ED925608F42DF4F167F4AD6A /* Crypto */,
);
productName = ProxyCore;
productReference = FFBBFDC8A74655F6BABEC8F2 /* ProxyCore.framework */;
productType = "com.apple.product-type.framework";
};
C707902F2AC99A166223934F /* PacketTunnel */ = {
isa = PBXNativeTarget;
buildConfigurationList = C08BF5A2BB29F160D521D06F /* Build configuration list for PBXNativeTarget "PacketTunnel" */;
buildPhases = (
4C8175F7133F38B4DA387631 /* Sources */,
91899A80204278D56425775F /* Frameworks */,
);
buildRules = (
);
dependencies = (
EA9FEBEB1E4BE777FD29C662 /* PBXTargetDependency */,
);
name = PacketTunnel;
packageProductDependencies = (
4984B6EFE9C646250BBC622F /* GRDB */,
BE056A6D2498A5D37D3D654F /* NIOCore */,
2B0A2F194C23CE100A7B16B6 /* NIOPosix */,
2C7F42CDC12F03C0FDD6539A /* NIOSSL */,
2C85D26D13198732391DB72A /* NIOHTTP1 */,
11DB0A1E449F691613E238DE /* NIOExtras */,
);
productName = PacketTunnel;
productReference = FE274B16256054C197609357 /* PacketTunnel.appex */;
productType = "com.apple.product-type.app-extension";
};
/* End PBXNativeTarget section */
/* Begin PBXProject section */
7FA5FB810CD14E3EF2830B5F /* Project object */ = {
isa = PBXProject;
attributes = {
BuildIndependentTargetsInParallel = YES;
LastUpgradeCheck = 2630;
TargetAttributes = {
2300A5AA6E7BFEFBD7C0D1ED = {
ProvisioningStyle = Automatic;
};
70F9CA505ABDF65D6F84D6DD = {
DevelopmentTeam = "";
ProvisioningStyle = Automatic;
};
C707902F2AC99A166223934F = {
ProvisioningStyle = Automatic;
};
};
};
buildConfigurationList = 7306E97FDC8838264957D050 /* Build configuration list for PBXProject "ProxyApp" */;
compatibilityVersion = "Xcode 14.0";
developmentRegion = en;
hasScannedForEncodings = 0;
knownRegions = (
Base,
en,
);
mainGroup = F4DC7647CDACD11EA806CCBC;
minimizedProjectReferenceProxies = 1;
packageReferences = (
66704B6AC3BDA168FF5DFD37 /* XCRemoteSwiftPackageReference "GRDB.swift" */,
3E7691AA8929525CAC738FC5 /* XCRemoteSwiftPackageReference "swift-certificates" */,
BF38BBC56E412F25947ECED0 /* XCRemoteSwiftPackageReference "swift-crypto" */,
8341BFADEB5EA31123791331 /* XCRemoteSwiftPackageReference "swift-nio" */,
2FE2868EB18FE0C5308D2320 /* XCRemoteSwiftPackageReference "swift-nio-extras" */,
22C1FB1D2F618C70B47E42CD /* XCRemoteSwiftPackageReference "swift-nio-ssl" */,
);
projectDirPath = "";
projectRoot = "";
targets = (
C707902F2AC99A166223934F /* PacketTunnel */,
2300A5AA6E7BFEFBD7C0D1ED /* ProxyApp */,
70F9CA505ABDF65D6F84D6DD /* ProxyCore */,
);
};
/* End PBXProject section */
/* Begin PBXSourcesBuildPhase section */
4C8175F7133F38B4DA387631 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
7034A0C2F5A8CDC56360D73A /* PacketTunnelProvider.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
A1AF215119C2E806EC455036 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
488299CE2605314EE0C949AA /* AppGroupPaths.swift in Sources */,
80B683DD5BDBF9C1F6A512E6 /* BlockListEntry.swift in Sources */,
F32E1472628FC2FD12CC833C /* BreakpointRule.swift in Sources */,
E7AA10E880398BCC7E2642EC /* CURLParser.swift in Sources */,
5CBD25190C3F1AED2CCD821A /* CapturedTraffic.swift in Sources */,
AB7825AE02AFC8C30B87CB6D /* CertificateManager.swift in Sources */,
F38240D6A5DF02C96345910F /* ComposeRepository.swift in Sources */,
B703C5C4402C3821B94FED7F /* ComposeRequest.swift in Sources */,
E51E4D4ABE03C86CAC2A3803 /* ConfigurationRepository.swift in Sources */,
4C1A9246FCBC2F86E0D33E10 /* ConnectHandler.swift in Sources */,
020C7E9BFD5FB376A5B5AB92 /* Constants.swift in Sources */,
56C49856550867A6DD6360A2 /* DNSSpoofRule.swift in Sources */,
BBFB2C1995747DBD3B1A322B /* DatabaseManager.swift in Sources */,
79FE52B43CBAF0F42EAA5926 /* DomainGroup.swift in Sources */,
C07BCF735C7ED4DDC54CED7A /* GlueHandler.swift in Sources */,
E36D7B872F13A4CB0DCBBC44 /* HTTPBodyDecoder.swift in Sources */,
FD565FCB905CB38529F4AF19 /* HTTPCaptureHandler.swift in Sources */,
34E1EA5C2AA423CB092D99B7 /* IPCManager.swift in Sources */,
41E9BEEBA72730B7D9B8DDA6 /* MITMHandler.swift in Sources */,
73197B515ABE80AB74BC232A /* MapLocalRule.swift in Sources */,
771183F6D74FBD03BC8DC686 /* NotificationThrottle.swift in Sources */,
AE6439B7C988FC159CBFBC11 /* PinnedDomain.swift in Sources */,
777697FE6E08DFBC5CCCFDA9 /* PinnedDomainRepository.swift in Sources */,
EC3F750A051B55A202E26571 /* ProxyConfiguration.swift in Sources */,
F7518FEFC1BD4D9C494E77E6 /* ProxyLogger.swift in Sources */,
2311FADAB0FC08035CD1199A /* ProxyRuntimeStatus.swift in Sources */,
5B66F70CBCE439C4E1A5D108 /* ProxyServer.swift in Sources */,
575E76B3A4C1FF71DCFA2A09 /* RulesEngine.swift in Sources */,
9D2AF127D52466CC1DF030C7 /* RulesRepository.swift in Sources */,
58AEADB31F9ACB5A0B918A97 /* RuntimeStatusRepository.swift in Sources */,
9E7B90C28927E808B6EE8275 /* SSLProxyingEntry.swift in Sources */,
3CFD7D055BAB97B819189496 /* SystemTrafficFilter.swift in Sources */,
B7E0A7EDA5ECD495D8AE1B1F /* TrafficRepository.swift in Sources */,
6F9A607918651BB36266193A /* WildcardMatcher.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
AF5D1EED56C2B32DDC71C5A4 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
2D294CFFDB2FF485FDDF338E /* AdvancedSettingsView.swift in Sources */,
20E68EF40E3BA8131B479E55 /* AppLockView.swift in Sources */,
1B346F9DF3D2319ED2CE49BD /* AppSettingsView.swift in Sources */,
A946C1681FB46D11AA6912B0 /* AppState.swift in Sources */,
AA23DE16F97A24279BBC6C1E /* BlockListView.swift in Sources */,
4556109D775B65AC4D596E67 /* BreakpointRulesView.swift in Sources */,
9A91E027039087C8E07F224B /* CURLImportView.swift in Sources */,
E7497BB12483B0928783579F /* CertificateView.swift in Sources */,
59C38D09525034A6E4D4DDBE /* ComposeEditorView.swift in Sources */,
1032DF442393FF744C5D6CB7 /* ComposeListView.swift in Sources */,
C659BA93C402A36E3E108706 /* ContentView.swift in Sources */,
AD0314CCE960088687E23B9C /* DNSSpoofingView.swift in Sources */,
25DFC386BDBFC3B799E7ADCF /* DomainDetailView.swift in Sources */,
D7D0DED251BC60F65CA595BC /* EmptyStateView.swift in Sources */,
161B0B0900010F54252B2D3D /* FilterChipsView.swift in Sources */,
14B66ED5980D1C365A5F1492 /* FullResponseView.swift in Sources */,
44D7306C16BF67B232AE93A7 /* HeaderEditorSheet.swift in Sources */,
91A5B9A95AFF29C206B8B495 /* HexView.swift in Sources */,
3E0939BAB9A087647A8943A2 /* HomeView.swift in Sources */,
273250EA21F8FC1AAF587B57 /* JSONTreeView.swift in Sources */,
268C1BC427C7CC81DCF6C7C8 /* KeyValueRow.swift in Sources */,
5CCD73D04194E548C72A9482 /* MapLocalView.swift in Sources */,
B1ED1B3C0D80C2D0DCD48EBF /* MethodBadge.swift in Sources */,
67A1B4E0EF5F307638959DD8 /* MoreView.swift in Sources */,
BB1A565DEF2504F7B1031366 /* NoCachingView.swift in Sources */,
FF47A342C5D326B1CDFBA554 /* PinView.swift in Sources */,
EABEAF43B23210EAC0023B33 /* PinnedDomainsView.swift in Sources */,
8258F5ED1BD2A12C52FED4EE /* ProxyApp.swift in Sources */,
6AD008CC5844A43CF575C1C1 /* QueryEditorSheet.swift in Sources */,
47FCBF7C704629E6760E1B0C /* RequestDetailView.swift in Sources */,
36BA84C1E610292F4DC98D1A /* SSLProxyingListView.swift in Sources */,
28E89C9BCF2C36DA2A513708 /* SelectableTextView.swift in Sources */,
FF970F984CE302E0099E94B1 /* SetupGuideView.swift in Sources */,
AE4AEED1C775E143C8E364AB /* StatusBadge.swift in Sources */,
0472CBEB3A89C801E4057FBA /* ToggleHeaderView.swift in Sources */,
0510F681F9E47AF338D0DCFF /* TrafficRowView.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin PBXTargetDependency section */
C4AF7000670A7653D7E85327 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
target = C707902F2AC99A166223934F /* PacketTunnel */;
targetProxy = 2B8DDC710BD3430C82E5C684 /* PBXContainerItemProxy */;
};
DE40559C9728CDCE427D8996 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
target = 70F9CA505ABDF65D6F84D6DD /* ProxyCore */;
targetProxy = A1EB54C0FEF9ECCB84D0656A /* PBXContainerItemProxy */;
};
EA9FEBEB1E4BE777FD29C662 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
target = 70F9CA505ABDF65D6F84D6DD /* ProxyCore */;
targetProxy = 60D47013E91CCA78687C2E90 /* PBXContainerItemProxy */;
};
/* End PBXTargetDependency section */
/* Begin XCBuildConfiguration section */
2EEEC070361A624E7DEB9625 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
CODE_SIGN_ENTITLEMENTS = PacketTunnel/Entitlements/PacketTunnel.entitlements;
DEVELOPMENT_TEAM = V3PF3M6B6U;
INFOPLIST_FILE = PacketTunnel/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
"@executable_path/../../Frameworks",
);
PRODUCT_BUNDLE_IDENTIFIER = com.treyt.proxyapp.PacketTunnel;
SDKROOT = iphoneos;
SWIFT_STRICT_CONCURRENCY = complete;
SWIFT_VERSION = 5;
TARGETED_DEVICE_FAMILY = "1,2";
};
name = Debug;
};
3B2C04C048A83ABF8204E23D /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_NONNULL = YES;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_ENABLE_OBJC_WEAK = YES;
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
CODE_SIGN_STYLE = Automatic;
COPY_PHASE_STRIP = NO;
DEBUG_INFORMATION_FORMAT = dwarf;
DEVELOPMENT_TEAM = "";
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_TESTABILITY = YES;
GCC_C_LANGUAGE_STANDARD = gnu11;
GCC_DYNAMIC_NO_PIC = NO;
GCC_NO_COMMON_BLOCKS = YES;
GCC_OPTIMIZATION_LEVEL = 0;
GCC_PREPROCESSOR_DEFINITIONS = (
"$(inherited)",
"DEBUG=1",
);
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 17.0;
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
MTL_FAST_MATH = YES;
ONLY_ACTIVE_ARCH = YES;
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = iphoneos;
SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
SWIFT_VERSION = 6.0;
};
name = Debug;
};
61964906422627D2EF266198 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_ENTITLEMENTS = App/Entitlements/ProxyApp.entitlements;
CODE_SIGN_IDENTITY = "iPhone Developer";
DEVELOPMENT_TEAM = V3PF3M6B6U;
INFOPLIST_FILE = App/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
);
PRODUCT_BUNDLE_IDENTIFIER = com.treyt.proxyapp;
SDKROOT = iphoneos;
SWIFT_STRICT_CONCURRENCY = complete;
TARGETED_DEVICE_FAMILY = "1,2";
};
name = Release;
};
61C79C106F9B9AD846135D95 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
CODE_SIGN_IDENTITY = "";
CURRENT_PROJECT_VERSION = 1;
DEFINES_MODULE = YES;
DYLIB_COMPATIBILITY_VERSION = 1;
DYLIB_CURRENT_VERSION = 1;
DYLIB_INSTALL_NAME_BASE = "@rpath";
GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_FILE = ProxyCore/Info.plist;
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
);
MACH_O_TYPE = staticlib;
PRODUCT_BUNDLE_IDENTIFIER = com.treyt.proxyapp.ProxyCore;
SDKROOT = iphoneos;
SKIP_INSTALL = YES;
SWIFT_STRICT_CONCURRENCY = complete;
TARGETED_DEVICE_FAMILY = "1,2";
VERSIONING_SYSTEM = "apple-generic";
};
name = Release;
};
88B1E5A2622E69D2D0BCD5CD /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
CODE_SIGN_IDENTITY = "";
CURRENT_PROJECT_VERSION = 1;
DEFINES_MODULE = YES;
DYLIB_COMPATIBILITY_VERSION = 1;
DYLIB_CURRENT_VERSION = 1;
DYLIB_INSTALL_NAME_BASE = "@rpath";
GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_FILE = ProxyCore/Info.plist;
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
);
MACH_O_TYPE = staticlib;
PRODUCT_BUNDLE_IDENTIFIER = com.treyt.proxyapp.ProxyCore;
SDKROOT = iphoneos;
SKIP_INSTALL = YES;
SWIFT_STRICT_CONCURRENCY = complete;
TARGETED_DEVICE_FAMILY = "1,2";
VERSIONING_SYSTEM = "apple-generic";
};
name = Debug;
};
8B8FCE81C675A6DD3F42DB9E /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
CODE_SIGN_ENTITLEMENTS = PacketTunnel/Entitlements/PacketTunnel.entitlements;
DEVELOPMENT_TEAM = V3PF3M6B6U;
INFOPLIST_FILE = PacketTunnel/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
"@executable_path/../../Frameworks",
);
PRODUCT_BUNDLE_IDENTIFIER = com.treyt.proxyapp.PacketTunnel;
SDKROOT = iphoneos;
SWIFT_STRICT_CONCURRENCY = complete;
SWIFT_VERSION = 5;
TARGETED_DEVICE_FAMILY = "1,2";
};
name = Release;
};
CF027E7CE33583E2EDEEFAA7 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_NONNULL = YES;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_ENABLE_OBJC_WEAK = YES;
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
CODE_SIGN_STYLE = Automatic;
COPY_PHASE_STRIP = NO;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEVELOPMENT_TEAM = "";
ENABLE_NS_ASSERTIONS = NO;
ENABLE_STRICT_OBJC_MSGSEND = YES;
GCC_C_LANGUAGE_STANDARD = gnu11;
GCC_NO_COMMON_BLOCKS = YES;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 17.0;
MTL_ENABLE_DEBUG_INFO = NO;
MTL_FAST_MATH = YES;
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = iphoneos;
SWIFT_COMPILATION_MODE = wholemodule;
SWIFT_OPTIMIZATION_LEVEL = "-O";
SWIFT_VERSION = 6.0;
};
name = Release;
};
EFF7C0D30C6FE917F257A19E /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_ENTITLEMENTS = App/Entitlements/ProxyApp.entitlements;
CODE_SIGN_IDENTITY = "iPhone Developer";
DEVELOPMENT_TEAM = V3PF3M6B6U;
INFOPLIST_FILE = App/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
);
PRODUCT_BUNDLE_IDENTIFIER = com.treyt.proxyapp;
SDKROOT = iphoneos;
SWIFT_STRICT_CONCURRENCY = complete;
TARGETED_DEVICE_FAMILY = "1,2";
};
name = Debug;
};
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
7306E97FDC8838264957D050 /* Build configuration list for PBXProject "ProxyApp" */ = {
isa = XCConfigurationList;
buildConfigurations = (
3B2C04C048A83ABF8204E23D /* Debug */,
CF027E7CE33583E2EDEEFAA7 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug;
};
A71CD7086139EDA325C7C633 /* Build configuration list for PBXNativeTarget "ProxyCore" */ = {
isa = XCConfigurationList;
buildConfigurations = (
88B1E5A2622E69D2D0BCD5CD /* Debug */,
61C79C106F9B9AD846135D95 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug;
};
C08BF5A2BB29F160D521D06F /* Build configuration list for PBXNativeTarget "PacketTunnel" */ = {
isa = XCConfigurationList;
buildConfigurations = (
2EEEC070361A624E7DEB9625 /* Debug */,
8B8FCE81C675A6DD3F42DB9E /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug;
};
EC03B67BCA3C49D1F9E3F538 /* Build configuration list for PBXNativeTarget "ProxyApp" */ = {
isa = XCConfigurationList;
buildConfigurations = (
EFF7C0D30C6FE917F257A19E /* Debug */,
61964906422627D2EF266198 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug;
};
/* End XCConfigurationList section */
/* Begin XCRemoteSwiftPackageReference section */
22C1FB1D2F618C70B47E42CD /* XCRemoteSwiftPackageReference "swift-nio-ssl" */ = {
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/apple/swift-nio-ssl.git";
requirement = {
kind = upToNextMajorVersion;
minimumVersion = 2.27.0;
};
};
2FE2868EB18FE0C5308D2320 /* XCRemoteSwiftPackageReference "swift-nio-extras" */ = {
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/apple/swift-nio-extras.git";
requirement = {
kind = upToNextMajorVersion;
minimumVersion = 1.22.0;
};
};
3E7691AA8929525CAC738FC5 /* XCRemoteSwiftPackageReference "swift-certificates" */ = {
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/apple/swift-certificates.git";
requirement = {
kind = upToNextMajorVersion;
minimumVersion = 1.5.0;
};
};
66704B6AC3BDA168FF5DFD37 /* XCRemoteSwiftPackageReference "GRDB.swift" */ = {
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/groue/GRDB.swift.git";
requirement = {
kind = upToNextMajorVersion;
minimumVersion = 7.4.1;
};
};
8341BFADEB5EA31123791331 /* XCRemoteSwiftPackageReference "swift-nio" */ = {
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/apple/swift-nio.git";
requirement = {
kind = upToNextMajorVersion;
minimumVersion = 2.65.0;
};
};
BF38BBC56E412F25947ECED0 /* XCRemoteSwiftPackageReference "swift-crypto" */ = {
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/apple/swift-crypto.git";
requirement = {
kind = upToNextMajorVersion;
minimumVersion = 3.5.0;
};
};
/* End XCRemoteSwiftPackageReference section */
/* Begin XCSwiftPackageProductDependency section */
11DB0A1E449F691613E238DE /* NIOExtras */ = {
isa = XCSwiftPackageProductDependency;
package = 2FE2868EB18FE0C5308D2320 /* XCRemoteSwiftPackageReference "swift-nio-extras" */;
productName = NIOExtras;
};
13768686350369739100F57B /* Crypto */ = {
isa = XCSwiftPackageProductDependency;
package = BF38BBC56E412F25947ECED0 /* XCRemoteSwiftPackageReference "swift-crypto" */;
productName = Crypto;
};
2B0A2F194C23CE100A7B16B6 /* NIOPosix */ = {
isa = XCSwiftPackageProductDependency;
package = 8341BFADEB5EA31123791331 /* XCRemoteSwiftPackageReference "swift-nio" */;
productName = NIOPosix;
};
2C7F42CDC12F03C0FDD6539A /* NIOSSL */ = {
isa = XCSwiftPackageProductDependency;
package = 22C1FB1D2F618C70B47E42CD /* XCRemoteSwiftPackageReference "swift-nio-ssl" */;
productName = NIOSSL;
};
2C85D26D13198732391DB72A /* NIOHTTP1 */ = {
isa = XCSwiftPackageProductDependency;
package = 8341BFADEB5EA31123791331 /* XCRemoteSwiftPackageReference "swift-nio" */;
productName = NIOHTTP1;
};
2DE391CB5A75FCC4AC9A7B64 /* NIOCore */ = {
isa = XCSwiftPackageProductDependency;
package = 8341BFADEB5EA31123791331 /* XCRemoteSwiftPackageReference "swift-nio" */;
productName = NIOCore;
};
302E511C58383FFA46C46C1A /* X509 */ = {
isa = XCSwiftPackageProductDependency;
package = 3E7691AA8929525CAC738FC5 /* XCRemoteSwiftPackageReference "swift-certificates" */;
productName = X509;
};
425205F9256BA5CD3D743B30 /* GRDB */ = {
isa = XCSwiftPackageProductDependency;
package = 66704B6AC3BDA168FF5DFD37 /* XCRemoteSwiftPackageReference "GRDB.swift" */;
productName = GRDB;
};
4984B6EFE9C646250BBC622F /* GRDB */ = {
isa = XCSwiftPackageProductDependency;
package = 66704B6AC3BDA168FF5DFD37 /* XCRemoteSwiftPackageReference "GRDB.swift" */;
productName = GRDB;
};
74FAB262A4E71F9B9DF02DE5 /* NIOHTTP1 */ = {
isa = XCSwiftPackageProductDependency;
package = 8341BFADEB5EA31123791331 /* XCRemoteSwiftPackageReference "swift-nio" */;
productName = NIOHTTP1;
};
7ACEE8638C00CA74E27095D3 /* NIOPosix */ = {
isa = XCSwiftPackageProductDependency;
package = 8341BFADEB5EA31123791331 /* XCRemoteSwiftPackageReference "swift-nio" */;
productName = NIOPosix;
};
8A99B87B3538F636F618F358 /* NIOHTTP1 */ = {
isa = XCSwiftPackageProductDependency;
package = 8341BFADEB5EA31123791331 /* XCRemoteSwiftPackageReference "swift-nio" */;
productName = NIOHTTP1;
};
8F906D014F34C26B78E90B76 /* NIOCore */ = {
isa = XCSwiftPackageProductDependency;
package = 8341BFADEB5EA31123791331 /* XCRemoteSwiftPackageReference "swift-nio" */;
productName = NIOCore;
};
8FADF83FADCE3702AFCC45C9 /* NIOPosix */ = {
isa = XCSwiftPackageProductDependency;
package = 8341BFADEB5EA31123791331 /* XCRemoteSwiftPackageReference "swift-nio" */;
productName = NIOPosix;
};
9B2A586748D557D26CE9C75D /* NIOSSL */ = {
isa = XCSwiftPackageProductDependency;
package = 22C1FB1D2F618C70B47E42CD /* XCRemoteSwiftPackageReference "swift-nio-ssl" */;
productName = NIOSSL;
};
9FBB9D83DA8C2BD34605DD8F /* NIOExtras */ = {
isa = XCSwiftPackageProductDependency;
package = 2FE2868EB18FE0C5308D2320 /* XCRemoteSwiftPackageReference "swift-nio-extras" */;
productName = NIOExtras;
};
B23BF84F58802C2FD4181AD2 /* GRDB */ = {
isa = XCSwiftPackageProductDependency;
package = 66704B6AC3BDA168FF5DFD37 /* XCRemoteSwiftPackageReference "GRDB.swift" */;
productName = GRDB;
};
BE056A6D2498A5D37D3D654F /* NIOCore */ = {
isa = XCSwiftPackageProductDependency;
package = 8341BFADEB5EA31123791331 /* XCRemoteSwiftPackageReference "swift-nio" */;
productName = NIOCore;
};
D872B7228838C504D217B061 /* X509 */ = {
isa = XCSwiftPackageProductDependency;
package = 3E7691AA8929525CAC738FC5 /* XCRemoteSwiftPackageReference "swift-certificates" */;
productName = X509;
};
E3702F97C3DF37F2C4BEE30C /* NIOExtras */ = {
isa = XCSwiftPackageProductDependency;
package = 2FE2868EB18FE0C5308D2320 /* XCRemoteSwiftPackageReference "swift-nio-extras" */;
productName = NIOExtras;
};
ED925608F42DF4F167F4AD6A /* Crypto */ = {
isa = XCSwiftPackageProductDependency;
package = BF38BBC56E412F25947ECED0 /* XCRemoteSwiftPackageReference "swift-crypto" */;
productName = Crypto;
};
F7677A32280A2AB999BBC1DA /* NIOSSL */ = {
isa = XCSwiftPackageProductDependency;
package = 22C1FB1D2F618C70B47E42CD /* XCRemoteSwiftPackageReference "swift-nio-ssl" */;
productName = NIOSSL;
};
/* End XCSwiftPackageProductDependency section */
};
rootObject = 7FA5FB810CD14E3EF2830B5F /* Project object */;
}