axTLS port for ESP8266
C HTML C# Shell Perl Java Makefile
Switch branches/tags
Nothing to show
Clone or download
earlephilhower and igrr Remove compile warnings, move add'l consts to PMEM
There were some simple-to-fix compile warnings relating to missing
imports and datatypes.  Add proper includes (and replace the hacked
util/time.h definition of timeval with the real one in our SDK).

Also migrate multiple constant strings with minimal code changes, freeing
around 210 additional bytes of heap.
Latest commit 0c3a9f7 Jan 17, 2018

README.md

This is an ESP8266 port of axTLS library, currently based on axTLS 2.1.4 (SVN version 277).

This library supports TLS 1.2, and the following cipher suites:

Cipher suite name (RFC) OpenSSL name Key exchange Encryption Hash
TLS_RSA_WITH_AES_128_CBC_SHA AES128-SHA RSA AES-128 SHA-1
TLS_RSA_WITH_AES_256_CBC_SHA AES256-SHA RSA AES-256 SHA-1
TLS_RSA_WITH_AES_128_CBC_SHA256 AES128-SHA256 RSA AES-128 SHA-256
TLS_RSA_WITH_AES_256_CBC_SHA256 AES256-SHA256 RSA AES-256 SHA-256

Using the library

This is not a self-sufficient library. In addition to the standard C library functions, application has to provide the following functions:

ax_port_read
ax_port_write
ax_port_open
ax_port_close
ax_get_file
phy_get_rand  (provided by the IoT SDK)
ets_printf    (in ESP8266 ROM)
ets_putc      (in ESP8266 ROM)

For use with LwIP raw TCP API, see compat/README.md

Building Build status

To build, add xtensa toolchain to your path, and run make. The library will be built in bin/ directory.

Credits and license

axTLS is written and maintained by Cameron Rich.

Other people have contributed to this port; see git logs for a full list.

See LICENSE file for axTLS license.