Davide De Rosa
595cae3563
Add strategy for control channel serialization
2018-09-19 22:04:52 +02:00
Davide De Rosa
19ce7de819
Encapsulate control state into ControlChannel
...
First step: variables + mutating funcs.
2018-09-19 22:04:52 +02:00
Davide De Rosa
d80c0b5460
Move in/out states to a generic struct
2018-09-19 22:04:52 +02:00
Davide De Rosa
2bd9484a43
Move ControlPacket serialization to Obj-C
...
Additionally, make sessionId non-optional in control packets. They
must have it, therefore treat a missing sessionId as a programming
error instead.
Reuse routines for acks to make PacketMacros the only point of
packets serialization.
2018-09-19 22:04:52 +02:00
Davide De Rosa
7aa4a0cc04
Fix a few annoyances with C headers
...
Do not compile headers, FFS.
2018-09-07 00:30:53 +02:00
Davide De Rosa
d6b80ea449
Implement Codable in public entities
...
Also rename CompressionFraming for being an extension of
SessionProxy.
2018-09-06 10:34:10 +02:00
Davide De Rosa
b050110e60
Bridge CompressionFraming to Swift
...
Avoid exposing __TunnelKitNative module for using it.
2018-08-31 01:40:58 +02:00
Davide De Rosa
de6b22349e
Test IPv4 <-> String conversions
2018-08-31 01:06:38 +02:00
Davide De Rosa
b0758412a0
Add PUSH_REPLY unit tests
2018-08-30 18:04:12 +02:00
Davide De Rosa
68810d9497
Add description to framing enum
2018-08-30 13:59:47 +02:00
Davide De Rosa
209889b9d2
Make compression framing an enum option
...
- Disabled: no framing (default)
- CompLZO: NO_COMPRESS
- Compress: NO_COMPRESS_SWAP
2018-08-30 12:43:36 +02:00
Davide De Rosa
dee2956406
Rename Certificate to CryptoContainer
...
Makes more sense as it holds certs and keys. Can be other formats
than PEM in the future.
2018-08-28 12:55:27 +02:00
Davide De Rosa
8e70567c83
Remove forgotten stale certificates
2018-08-28 12:53:14 +02:00
Davide De Rosa
2459fe1bfd
Move a few classes inside SessionProxy
...
- Authenticator
- EncryptionBridge (formerly EncryptionProxy)
- PushReply
- SessionKey
They only make sense there. Content unchanged.
2018-08-23 18:51:36 +02:00
Davide De Rosa
8a9e99e6a9
Wrap SessionProxy configuration in a builder
2018-08-23 18:51:36 +02:00
Davide De Rosa
897e824340
Enforce use of non-preset CA certificates
2018-08-23 12:11:55 +02:00
Davide De Rosa
dfac465c1d
Drop support for PIA HARD_RESET patch
2018-08-23 12:11:55 +02:00
Davide De Rosa
4d03df7066
Finish up renaming in headers and prefixes
2018-08-23 12:10:56 +02:00
Davide De Rosa
fe665e8ad5
Rename library to TunnelKit
2018-08-23 12:10:41 +02:00