Contents

Balancingrock/SecureSockets

A Swift framework for secure connections using openSSL.

As a stand alone

When SecureSockets is build as stand-alone product the installation is as follows:

$ git clone https://github.com/balancingrock/SecureSockets.git $ cd SecureSockets <<edit Package.swift>> $ swift build

The step <<edit Package.swift>> is to un-comment either the openssl linux libraries or the openssl macOS libaries.

As a dependency on the command line

SecureSockets can be used by the Swift Package Manager. Just add it to your package manifest as a dependency.

To build the project that uses SecureSockets add the following options to the build command:

$ swift build -Xswiftc -I/<<path>>/openssl/<<version-platform>>/include -Xlinker -L/<<path>>/openssl/<<version-platform>>/lib

where <<path>> must be set to the proper value and <<version-make>> to the openssl version and the platform necessary.

Alternatively it may be possible to include these in the product manifest.

As a dependency using Xcode for development

The Swiftfire project is used as an example.

  1. Clone the project repository and create a Xcode project:

$ git clone https://github.com/Balancingrock/Swiftfire.git $ cd Swiftfire $ swift package generate-xcodeproj

  1. Double click the project to open it.
  1. In the navigator select Swiftfire, then under Targets select CopensslGlue then select Build Settings

- In Linking add the value -lssl -lcrypto to Other Linker Flags. - In Search Paths add the value $(SRCROOT)/openssl/v1_1_1g-macos_10_15/lib to Library Search Paths - in Search Paths add the value $(SRCROOT)/openssl/v1_1_1g-macos_10_15/include to Header Search Paths (be sure to leave a blank character between the content that was already present and the additional content)

  1. In the navigator select Swiftfire, then under Targets select SecureSockets then select Build Settings
  • in Search Paths add the value $(SRCROOT)/openssl/v1_1_1g-macos_10_15/include to Header Search Paths (be sure to leave a blank character between the content that was already present and the additional content)

The build process should now be able to complete.

Version history

No new features planned. Updates are made on an ad-hoc basis as needed to support Swiftfire development.

1.1.2 - 1.1.8
  • Rapid prototyping for iOS and tvOS compatibility
  • Removed assignNewRsa from non- macOS/Linux targets
  • Added swift version, platform and a LICESE file.
1.1.1
  • Linux compatibility
  • Renaming COpenSsl to Copenssl
  • Added CopensslGlue to simplify the build process.
1.1.0
  • Switched from BRUtils.Result to Swift.Result
  • Added SecureSocketsResult based on Swift.Result
  • Rewrote a few pointer usages to silence Swift 5.2 warnings
1.0.1
  • Documentation Updates
1.0.0
  • Reorganized for release 1.0.0

Package Metadata

Repository: Balancingrock/SecureSockets

Homepage: http://swiftfire.nl/

Stars: 5

Forks: 1

Open issues: 0

Default branch: master

Primary language: c

License: MIT

Topics: openssl, openssl-libraries, swift, swiftersockets, swiftfire

README: README.md