Giter Site home page Giter Site logo

ooo0ption / wolfssl-py Goto Github PK

View Code? Open in Web Editor NEW

This project forked from wolfssl/wolfssl-py

0.0 0.0 0.0 2.03 MB

Python wrapper for wolfSSL embedded SSL/TLS library.

Home Page: https://wolfssl.github.io/wolfssl-py/

Python 97.28% Makefile 2.72%

wolfssl-py's Introduction

Welcome

wolfSSL Python, a.k.a. wolfssl is a Python module that encapsulates wolfSSL's SSL/TLS library.

The wolfSSL SSL/TLS library is a lightweight, portable, C-language-based library targeted at IoT, embedded, and RTOS environments primarily because of its size, speed, and feature set. It works seamlessly in desktop, enterprise, and cloud environments as well.

Prerequisites

Linux

During installation via pip this will download the wolfSSL source and compile it, it therefore needs the same prerequisites as the wolfSSL C library. Therefore in Debian / Ubuntu you should do:

$ sudo apt install build-essential
$ sudo apt build-dep libwolfssl-dev

Compiling

The setup.py file covers most things you will need to do to build and install from source. As pre-requisites you will need to install either from your OS repository or pip. You'll also need the Python development package for your Python version:

  • cffi
  • tox
  • pytest

To build a source package run python setup.py sdist, to build a wheel package run python setup.py bdist_wheel. To test the build run tox. The tox tests rely on Python 3.9 being installed, if you do not have this version we recommend using pyenv to install it.

Installation

We provide Python wheels (prebuilt binaries) for OSX 64 bits and Linux 64 bits:

$ pip install wheel
$ pip install wolfssl

To build wolfssl-py from source:

$ cd wolfssl-py
$ pip install .

The default pip install clones wolfSSL from GitHub. To build wolfssl-py using a local installation of the native wolfSSL C library, the USE_LOCAL_WOLFSSL environment variable should be set. USE_LOCAL_WOLFSSL can be set to "1" to use the default library installation location (/usr/local/lib, /usr/local/include), or to use a custom location it can be set to the install location of your native wolfSSL library. For example:

# Uses default install location
$ USE_LOCAL_WOLFSSL=1 pip install .

# Uses custom install location
$ USE_LOCAL_WOLFSSL=/tmp/install pip install .

Testing

To run the tox tests in the source code, you'll need tox and a few other requirements.

  1. Make sure that the testing requirements are installed:
sudo -H pip install -r requirements/test.txt
  1. Run make check:
$ make check
...
_________________________________ summary _________________________________
py3: commands succeeded
congratulations :)

Support

For support and questions, please email [email protected].

wolfssl-py's People

Contributors

cconlon avatar moisesguimaraes avatar ejohnstown avatar dgarske avatar lealem47 avatar danielinux avatar haydenroche5 avatar jacobbarthelmeh avatar tmael avatar toddouska avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.