Merge branch 'review-documentation'
This commit is contained in:
commit
9488219c0b
|
@ -1,3 +1,6 @@
|
||||||
|
# Changelog
|
||||||
|
|
||||||
|
All notable changes to this project will be documented in this file.
|
||||||
|
|
||||||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
||||||
and this project _will soon adhere_ to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
and this project _will soon adhere_ to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||||
|
|
57
README.md
57
README.md
|
@ -2,12 +2,6 @@
|
||||||
|
|
||||||
This library provides a simplified Swift/Obj-C implementation of the OpenVPN® protocol for the Apple platforms. The crypto layer is built on top of [OpenSSL][dep-openssl] 1.1.0i, which in turn enables support for a certain range of encryption and digest algorithms.
|
This library provides a simplified Swift/Obj-C implementation of the OpenVPN® protocol for the Apple platforms. The crypto layer is built on top of [OpenSSL][dep-openssl] 1.1.0i, which in turn enables support for a certain range of encryption and digest algorithms.
|
||||||
|
|
||||||
## Contacts
|
|
||||||
|
|
||||||
Twitter: [@keeshux][me-twitter]
|
|
||||||
|
|
||||||
Website: [davidederosa.com][me-website]
|
|
||||||
|
|
||||||
## Getting started
|
## Getting started
|
||||||
|
|
||||||
The client is known to work with [OpenVPN®][openvpn] 2.3+ servers. Key renegotiation and replay protection are also included, but full-fledged configuration files (.ovpn) are not currently supported.
|
The client is known to work with [OpenVPN®][openvpn] 2.3+ servers. Key renegotiation and replay protection are also included, but full-fledged configuration files (.ovpn) are not currently supported.
|
||||||
|
@ -80,16 +74,15 @@ For the VPN to work properly, the `BasicTunnel` demo requires:
|
||||||
|
|
||||||
both in the main app and the tunnel extension target.
|
both in the main app and the tunnel extension target.
|
||||||
|
|
||||||
In order to test connection to your own server, modify the file `Demo/BasicTunnel-[iOS|macOS]/ViewController.swift` and make sure to set `builder.ca` to the PEM encoded certificate of your VPN server's CA (or `nil` to skip CA validation, however discouraged).
|
In order to test connection to your own server, modify the file `Demo/BasicTunnel-[iOS|macOS]/ViewController.swift` and make sure to set `ca` to the PEM encoded certificate of your VPN server's CA.
|
||||||
|
|
||||||
Example:
|
Example:
|
||||||
|
|
||||||
builder.endpointProtocols = [TunnelKitProvider.EndpointProtocol(.udp, 1194)]
|
private let ca = CryptoContainer(pem: """
|
||||||
builder.ca = """
|
|
||||||
-----BEGIN CERTIFICATE-----
|
-----BEGIN CERTIFICATE-----
|
||||||
MIIFJDCC...
|
MIIFJDCC...
|
||||||
-----END CERTIFICATE-----
|
-----END CERTIFICATE-----
|
||||||
"""
|
""")
|
||||||
|
|
||||||
## Documentation
|
## Documentation
|
||||||
|
|
||||||
|
@ -117,19 +110,11 @@ The goal of this module is packaging up a black box implementation of a [NEPacke
|
||||||
|
|
||||||
Currently, the extension supports VPN over both [UDP][ne-udp] and [TCP][ne-tcp] sockets. A debug log snapshot is optionally maintained and shared to host apps via `UserDefaults` in a shared App Group.
|
Currently, the extension supports VPN over both [UDP][ne-udp] and [TCP][ne-tcp] sockets. A debug log snapshot is optionally maintained and shared to host apps via `UserDefaults` in a shared App Group.
|
||||||
|
|
||||||
## Contributing
|
|
||||||
|
|
||||||
By contributing to this project you are agreeing to the terms stated in the [Contributor License Agreement (CLA)][contrib-cla].
|
|
||||||
|
|
||||||
For more details please see [CONTRIBUTING][contrib-readme].
|
|
||||||
|
|
||||||
## License
|
## License
|
||||||
|
|
||||||
### Part I
|
### Part I
|
||||||
|
|
||||||
Copyright 2018 Davide De Rosa
|
This project is licensed under the [GPLv3][license-content].
|
||||||
|
|
||||||
This project is licensed under the [GPLv3 license][license-gpl3], which can be found [here][license-content].
|
|
||||||
|
|
||||||
### Part II
|
### Part II
|
||||||
|
|
||||||
|
@ -137,7 +122,13 @@ As seen in [libsignal-protocol-c][license-signal]:
|
||||||
|
|
||||||
> Additional Permissions For Submission to Apple App Store: Provided that you are otherwise in compliance with the GPLv3 for each covered work you convey (including without limitation making the Corresponding Source available in compliance with Section 6 of the GPLv3), the Author also grants you the additional permission to convey through the Apple App Store non-source executable versions of the Program as incorporated into each applicable covered work as Executable Versions only under the Mozilla Public License version 2.0 (https://www.mozilla.org/en-US/MPL/2.0/).
|
> Additional Permissions For Submission to Apple App Store: Provided that you are otherwise in compliance with the GPLv3 for each covered work you convey (including without limitation making the Corresponding Source available in compliance with Section 6 of the GPLv3), the Author also grants you the additional permission to convey through the Apple App Store non-source executable versions of the Program as incorporated into each applicable covered work as Executable Versions only under the Mozilla Public License version 2.0 (https://www.mozilla.org/en-US/MPL/2.0/).
|
||||||
|
|
||||||
## Acknowledgements
|
### Contributing
|
||||||
|
|
||||||
|
By contributing to this project you are agreeing to the terms stated in the [Contributor License Agreement (CLA)][contrib-cla].
|
||||||
|
|
||||||
|
For more details please see [CONTRIBUTING][contrib-readme].
|
||||||
|
|
||||||
|
## Credits
|
||||||
|
|
||||||
- [PIATunnel][dep-piatunnel-repo] - Copyright (c) 2018-Present Private Internet Access
|
- [PIATunnel][dep-piatunnel-repo] - Copyright (c) 2018-Present Private Internet Access
|
||||||
- [SwiftyBeaver][dep-swiftybeaver-repo] - Copyright (c) 2015 Sebastian Kreutzberger
|
- [SwiftyBeaver][dep-swiftybeaver-repo] - Copyright (c) 2015 Sebastian Kreutzberger
|
||||||
|
@ -146,17 +137,20 @@ This product includes software developed by the OpenSSL Project for use in the O
|
||||||
|
|
||||||
© 2002-2018 OpenVPN Inc. - OpenVPN is a registered trademark of OpenVPN Inc.
|
© 2002-2018 OpenVPN Inc. - OpenVPN is a registered trademark of OpenVPN Inc.
|
||||||
|
|
||||||
|
## Contacts
|
||||||
|
|
||||||
|
Twitter: [@keeshux][about-twitter]
|
||||||
|
|
||||||
|
Website: [davidederosa.com][about-website]
|
||||||
|
|
||||||
## Donations
|
## Donations
|
||||||
|
|
||||||
TunnelKit is free software, donations are extremely welcome.
|
TunnelKit is free software, donations are extremely welcome.
|
||||||
|
|
||||||
Bitcoin address: [16w2AWamiH2SS68NYSMDcrbh5MnZ1c5eju][me-btc]
|
Bitcoin address: [16w2AWamiH2SS68NYSMDcrbh5MnZ1c5eju][about-btc]
|
||||||
|
|
||||||
[me-twitter]: https://twitter.com/keeshux
|
|
||||||
[me-website]: https://davidederosa.com
|
|
||||||
[me-btc]: bitcoin:16w2AWamiH2SS68NYSMDcrbh5MnZ1c5eju
|
|
||||||
|
|
||||||
[openvpn]: https://openvpn.net/index.php/open-source/overview.html
|
[openvpn]: https://openvpn.net/index.php/open-source/overview.html
|
||||||
|
|
||||||
[dep-cocoapods]: https://guides.cocoapods.org/using/getting-started.html
|
[dep-cocoapods]: https://guides.cocoapods.org/using/getting-started.html
|
||||||
[dep-jazzy]: https://github.com/realm/jazzy
|
[dep-jazzy]: https://github.com/realm/jazzy
|
||||||
[dep-brew]: https://brew.sh/
|
[dep-brew]: https://brew.sh/
|
||||||
|
@ -167,14 +161,15 @@ Bitcoin address: [16w2AWamiH2SS68NYSMDcrbh5MnZ1c5eju][me-btc]
|
||||||
[ne-udp]: https://developer.apple.com/documentation/networkextension/nwudpsession
|
[ne-udp]: https://developer.apple.com/documentation/networkextension/nwudpsession
|
||||||
[ne-tcp]: https://developer.apple.com/documentation/networkextension/nwtcpconnection
|
[ne-tcp]: https://developer.apple.com/documentation/networkextension/nwtcpconnection
|
||||||
|
|
||||||
[license-content]: /LICENSE
|
[license-content]: LICENSE
|
||||||
[license-gpl3]: https://choosealicense.com/licenses/gpl-3.0/
|
|
||||||
[license-signal]: https://github.com/signalapp/libsignal-protocol-c#license
|
[license-signal]: https://github.com/signalapp/libsignal-protocol-c#license
|
||||||
[license-mit]: https://choosealicense.com/licenses/mit/
|
[license-mit]: https://choosealicense.com/licenses/mit/
|
||||||
|
[contrib-cla]: CLA.rst
|
||||||
[contrib-cla]: /CLA.rst
|
[contrib-readme]: CONTRIBUTING.md
|
||||||
[contrib-readme]: /CONTRIBUTING.md
|
|
||||||
|
|
||||||
[dep-piatunnel-repo]: https://github.com/pia-foss/tunnel-apple
|
[dep-piatunnel-repo]: https://github.com/pia-foss/tunnel-apple
|
||||||
[dep-piatunnel-license]: https://github.com/pia-foss/tunnel-apple/blob/master/LICENSE
|
|
||||||
[dep-swiftybeaver-repo]: https://github.com/SwiftyBeaver/SwiftyBeaver
|
[dep-swiftybeaver-repo]: https://github.com/SwiftyBeaver/SwiftyBeaver
|
||||||
|
|
||||||
|
[about-twitter]: https://twitter.com/keeshux
|
||||||
|
[about-website]: https://davidederosa.com
|
||||||
|
[about-btc]: bitcoin:16w2AWamiH2SS68NYSMDcrbh5MnZ1c5eju
|
||||||
|
|
Loading…
Reference in New Issue