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
18c7de140e
Overwrite an existing profile configuration
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
2d2884fdea
Export profiles to separate JSONs
...
Use id as contextual filename.
2018-10-26 18:03:28 +02:00
Davide De Rosa
2aae3499de
Move host configurations to "Hosts" subdirectory
...
Without "host." prefix, now unnecessary.
2018-10-26 18:03:28 +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
8f29f79168
Fix exceptions thrown on already migrated JSON
...
Also remove deprecated tunnel configuration keys.
2018-10-26 15:31:02 +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
9726158030
Drop deprecated configuration values
...
- debugLogKey
- lastErrorKey
2018-10-25 22:45:50 +02:00
Davide De Rosa
12e0a55f7a
Bind migrations to build numbers
2018-10-25 22:45:50 +02:00
Davide De Rosa
082ffa3cb1
Attach build number to service JSON
...
Update before serializing.
2018-10-25 22:45:50 +02:00
Davide De Rosa
c73c2e3826
Rename tunnelConfiguration to baseConfiguration
...
It's much less confusing. Migrate too.
2018-10-25 22:45:50 +02:00
Davide De Rosa
09685e6994
Activate service migration
2018-10-25 22:45:50 +02:00
Davide De Rosa
d087acd512
Migrate host configurations
2018-10-25 22:45:50 +02:00
Davide De Rosa
542a3e3721
Upgrade TunnelKit with configuration refactoring
2018-10-25 22:45:44 +02:00
Davide De Rosa
f1f09dde2f
Rename support request to join community
2018-10-24 21:57:27 +02:00
Davide De Rosa
ef9032e440
Update TunnelKit
...
- Improve logging performance and privacy.
- Fix server-side renegotiation issues.
2018-10-24 21:23:13 +02:00
Davide De Rosa
205f8a9c0e
Refine regex for unsupported blocks
...
Was rejecting entries with shared prefix (e.g. "key" -> "keysize").
2018-10-24 10:24:45 +02:00
Davide De Rosa
f691a4f204
Raise exception on proxy in .ovpn
2018-10-24 00:24:23 +02:00
Davide De Rosa
ebbba3a713
Update TunnelKit to handle new error codes
2018-10-23 23:51:50 +02:00
Davide De Rosa
d026004db3
Raise exception on external file in .ovpn
...
- ca
- cert
- key
- tls-auth
- tls-crypt
2018-10-23 19:07:09 +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
81c7236500
Localize Twitter intent
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
edc513f6cc
Drop password confirmation field
2018-10-23 12:57:41 +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
9292919816
Update VPN status after profile reinstall
...
Should now cover all scenarios.
2018-10-23 12:54:40 +02:00
Davide De Rosa
976e47af64
Clear VPN error status before restart
2018-10-22 21:49:43 +02:00
Davide De Rosa
e8f2aaaf08
Show tunnel failure reason in VPN status
2018-10-22 21:49:43 +02:00
Davide De Rosa
3dd7f9e779
Update VPN section footer accordingly
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
be6abdcf2a
Move file-to-lines to String extension
2018-10-21 09:36:50 +02:00
Davide De Rosa
8219519a22
Fix credentials requirement in VPN configuration
...
Refines #4
2018-10-19 17:51:25 +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
ae2bd3d876
Replace some profile exceptions with preconditions
...
Misconfigured profiles must fall back to a consistent state, this
is a programming error.
- provider.pool: fall back to default pool (should always be there)
- provider.preset: why would one remove a preset?
- host.endpointProtocols: .ovpn with no remotes shouldn't get this far
2018-10-19 01:29:44 +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
23e27535c6
Split support requests
...
- Generic support on Reddit
- Debug log via email
2018-10-18 16:40:58 +02:00
Davide De Rosa
2fd5c32435
Fix PIA infra with empty endpoints
2018-10-18 14:48:20 +02:00
Davide De Rosa
46a8f72039
Bump API endpoint version
2018-10-18 14:07:32 +02:00
Davide De Rosa
8d1acda11a
Reject API response requiring more recent build
2018-10-18 14:02:35 +02:00
Davide De Rosa
567ddd9b12
Find out version/build statically
...
Assume bundle and info dictionary are never nil.
2018-10-18 14:02:35 +02:00
Davide De Rosa
728adf7919
Update PIA preset with GCM and patched endpoints
2018-10-18 13:55:07 +02:00
Davide De Rosa
c1be49a164
Add PIA patches support
2018-10-18 13:38:00 +02:00
Davide De Rosa
4774c2705f
Raise exception on unrecognized option values
...
Do not fall back when an unhandled value is found in:
- cipher
- auth
- proto
Falling back to a default value here would break the data
connection most of the time.
2018-10-18 10:25:15 +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
e31e4a31df
Reword issue report
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
b62f7669f2
Match cfg lines from the beginning
...
E.g. cipher was matching tls-cipher.
2018-10-17 23:59:30 +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
1602972c8e
Replace self-hosted API with static GitHub Pages
2018-10-11 21:30:53 +02:00
Davide De Rosa
76da7426cf
Add missing credits
2018-10-11 09:47:40 +02:00
Davide De Rosa
b9ec01945d
Initial commit
2018-10-11 09:13:19 +02:00