Commit Graph

372 Commits

Author SHA1 Message Date
Davide De Rosa 3d62728a95 Fix detail replacement in compact mode
Do not push created profile onto presented profile or any other
screen deeper inside (e.g. Parameters).
2018-10-27 22:17:53 +02:00
Davide De Rosa 06ecd3367f Overwrite pending profile when reimporting
- Overwrite title field
- Remove old .ovpn

useSuggestedTitle() is only called on load, it will never
overwrite user input unless there's a new import.
2018-10-27 20:41:47 +02:00
Davide De Rosa c084c71db3 Present host wizard in presented vc or root 2018-10-27 20:37:30 +02:00
Davide De Rosa 326c5b823d Observe wizard creation via notifications
Flow is too scattered to safely maintain delegation.
2018-10-27 20:11:26 +02:00
Davide De Rosa b7dc72a5e9 Sort hosts ignoring case 2018-10-27 16:56:41 +02:00
Davide De Rosa 33849c8ec8 Retain credentials of replaced host profile 2018-10-27 16:00:34 +02:00
Davide De Rosa ad063965da Retain back button in import flow 2018-10-27 15:01:51 +02:00
Davide De Rosa 0f43255676 Show warning alert before continuing import
Fixes #16
2018-10-27 15:01:51 +02:00
Davide De Rosa 8d2ce2e7ae Handle potentially unsupported as a warning alert
Configuration is imported anyway, so alert must be asynchronous.
2018-10-27 14:57:37 +02:00
Davide De Rosa 05d745ad6d Remove unused code 2018-10-27 13:35:21 +02:00
Davide De Rosa 42c94c3a14 Delete openURL .ovpn on Cancel 2018-10-27 13:35:21 +02:00
Davide De Rosa 0d23187eef Delete unparsable .ovpn 2018-10-27 13:35:21 +02:00
Davide De Rosa 9f951fc68b Delete .ovpn after import 2018-10-27 13:35:21 +02:00
Davide De Rosa 4098a15172 Allow deletion of imported profiles 2018-10-27 12:43:26 +02:00
Davide De Rosa 5dcc9ff970 Sort imported profiles alphabetically 2018-10-27 12:43:26 +02:00
Davide De Rosa 7b7804091b Deselect profile row on parsing error 2018-10-27 12:43:26 +02:00
Davide De Rosa 663764177a Forward wizard delegate after import
Necessary to delegate adding to organizer.
2018-10-27 12:43:26 +02:00
Davide De Rosa 0e7c0b6388 List imported .ovpn if any, fall back to alert
Use .formSheet presentation (iPad).
2018-10-27 12:43:26 +02:00
Davide De Rosa 25523b5f61 Add stubs for imported hosts 2018-10-27 12:43:26 +02:00
Davide De Rosa a5d4a4e59b Enable iTunes File Sharing 2018-10-27 12:43:26 +02:00
Davide De Rosa 013eaaabd4 Don't touch refresh if can communicate w/ original 2018-10-27 12:33:30 +02:00
Davide De Rosa 8c1e6d00ca Parse .ovpn file outside of wizard context 2018-10-27 12:33:17 +02:00
Davide De Rosa 422c4da09c Move ParsedFile out of WizardHostVC 2018-10-27 12:08:44 +02:00
Davide De Rosa 0d14349bca Move filename charset to extensions 2018-10-27 12:08:44 +02:00
Davide De Rosa 4bcb1fe2ad Convert some warnings to errors 2018-10-27 12:08:44 +02:00
Davide De Rosa 4b075bcc95 Improve alerts on configuration import error
Issue reporting is currently disabled because un unparsed .ovpn
may contain sensitive data.
2018-10-27 09:43:57 +02:00
Davide De Rosa c7639daf0d Strip configuration file before attaching
Of sensitive or private data.
2018-10-27 09:42:41 +02:00
Davide De Rosa dfde9c51e3 Fine-grain report attachments
- Debug log
- .ovpn profile (if any)
2018-10-27 09:42:41 +02:00
Davide De Rosa 821393af70 Refactor configurations in service extension
Reuse same directories of ConnectionService for storing
configuration files.
2018-10-27 09:42:41 +02:00
Davide De Rosa 52ec2bebd5 Restrict charset for host profile title
It's used now as a filename. Remember to also normalize pre-filled
title from imported filename by replacing illegal characters.
2018-10-26 18:57:07 +02:00
Davide De Rosa b5347e04b2 Move Context to ConnectionProfile
Fix an id conflict in credentials.
2018-10-26 18:57:07 +02:00
Davide De Rosa 78abb8c764 Refactor service to use external profile JSONs
- Store only profile key/metadata into service.

- Map profiles by (context, id), context being either provider
or host.

- Initialize cache with a placeholder profile, lazily load full
profile (e.g. after opening profile).

- Only serialize non-placeholder profiles (opened once).

- Do not load full profiles for organizer listing

WARNING: always load active profile as non-placeholder.
2018-10-26 18:30:37 +02:00
Davide De Rosa 8e1b67d151 Infer profile id uniqueness by context
Drop "(provider|host)." prefix, reuse as title.
2018-10-26 17:37:52 +02:00
Davide De Rosa 52cf733948 Only make host editable if original cfg available 2018-10-25 22:57:42 +02:00
Davide De Rosa 542a3e3721 Upgrade TunnelKit with configuration refactoring 2018-10-25 22:45:44 +02:00
Davide De Rosa ae9c32e9f5 Configure logging ASAP
Wasn't logging errors in profiles decoding.
2018-10-25 11:31:01 +02:00
Davide De Rosa f1f09dde2f Rename support request to join community 2018-10-24 21:57:27 +02:00
Davide De Rosa 8375fc58fc Do not confirm trusted policy change while offline 2018-10-23 23:56:53 +02:00
Davide De Rosa ebbba3a713 Update TunnelKit to handle new error codes 2018-10-23 23:51:50 +02:00
Davide De Rosa 8fe29cf924 Fix original configuration not really saved
Added in #10 but partially broken.
2018-10-23 18:51:18 +02:00
Davide De Rosa d781d9c8e0 Add share section with generic activity
To invite a friend.
2018-10-23 12:59:06 +02:00
Davide De Rosa 39c053bd54 Add tweet cell to About 2018-10-23 12:59:06 +02:00
Davide De Rosa 4bd339d456 Remove "Report issue" from About
Will bind report to current profile.
2018-10-23 12:59:06 +02:00
Davide De Rosa 0f374fa8c9 Rename "Submit debug log" to "Report issue" 2018-10-23 12:59:06 +02:00
Davide De Rosa 9d94d59aab Use a better section name 2018-10-23 12:57:41 +02:00
Davide De Rosa edc513f6cc Drop password confirmation field 2018-10-23 12:57:41 +02:00
Davide De Rosa 6ee9f37880 Revert to original configuration on tap 2018-10-23 12:57:11 +02:00
Davide De Rosa be17f57a5e Add reset cell to revert to original configuration
When a backing .ovpn is available.
2018-10-23 12:57:11 +02:00
Davide De Rosa 346a9490ec Save .ovpn internally associated to host profile 2018-10-23 12:57:11 +02:00
Davide De Rosa 669477ac12 Add missing owner/role to UTI
Fixes #6
2018-10-23 12:57:11 +02:00
Davide De Rosa a59d16077b Drop annoying table animations 2018-10-23 12:55:11 +02:00
Davide De Rosa 9292919816 Update VPN status after profile reinstall
Should now cover all scenarios.
2018-10-23 12:54:40 +02:00
Davide De Rosa e8f2aaaf08 Show tunnel failure reason in VPN status 2018-10-22 21:49:43 +02:00
Davide De Rosa 2e764ec14d Only show Reconnect if VPN is enabled 2018-10-21 10:19:42 +02:00
Davide De Rosa 6ed70feb77 Reconnect with a specific action cell 2018-10-21 10:19:42 +02:00
Davide De Rosa d064ac0f0f Add own definition of .ovpn file type
Fixes #6
2018-10-20 19:18:28 +02:00
Davide De Rosa 2edffea08a Remove document type from OpenVPN Connect
Would depend on it to be installed otherwise.
2018-10-20 19:02:21 +02:00
Davide De Rosa 0954de3322 Support TLS wrapping via TunnelKit
tls-auth and tls-crypt.
2018-10-19 17:25:39 +02:00
Davide De Rosa 5e0590184b Require credentials for providers only
Not always the case, but PIA certainly requires them. Will make it
an infrastructure option later. Only require credentials as a
configuration check, everything else has defaults.
2018-10-19 01:29:44 +02:00
Davide De Rosa ef2061de0a Update profile screen accordingly 2018-10-18 17:02:06 +02:00
Davide De Rosa 23e27535c6 Split support requests
- Generic support on Reddit
- Debug log via email
2018-10-18 16:40:58 +02:00
Davide De Rosa b93000819b Reuse Credits VC to add a Disclaimer 2018-10-18 10:19:08 +02:00
Davide De Rosa 62d1c2d882 Add promoting alert for subreddit 2018-10-18 10:04:23 +02:00
Davide De Rosa b6d430f106 Add link to Reddit 2018-10-18 09:37:18 +02:00
Davide De Rosa ccd5e2d03e Append exception desc to parsing error alert 2018-10-18 09:32:18 +02:00
Davide De Rosa 483edee22e Do not open .ovpn documents in-place
Files was raising a permission error.
2018-10-18 00:10:14 +02:00
Davide De Rosa f3df03de9b Disclose organizer profiles
Use text instead of checkmark to mark active profile. Allows
restoring disclosure indicator.
2018-10-17 23:58:49 +02:00
Davide De Rosa d1b0b59748 Treat unsupported option errors specifically
Show a more informative alert if the provided .ovpn file contains
an unsupported option.
2018-10-16 18:03:13 +02:00
Davide De Rosa ac06d2ccde Group accessory color with less alpha 2018-10-15 00:12:37 +02:00
Davide De Rosa 5c0738b136 Apply accent color to accessory checkmarks 2018-10-15 00:11:46 +02:00
Davide De Rosa 1602972c8e Replace self-hosted API with static GitHub Pages 2018-10-11 21:30:53 +02:00
Davide De Rosa b9ec01945d Initial commit 2018-10-11 09:13:19 +02:00