Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 

README.md

TLS server using picoTCP via wolfSSL custom callbacks

This TLS server runs in userspace, using picoTCP as compiled-in TCP/IP stack.

picotcp-server has been tested on Linux using latest picoTCP master, and wolfSSL 4.5.0.

Requirements

  • PicoTCP v.1.7 or later
  • wolfSSL (default configuration)
  • Access to /dev/net/tun on the host system (typically root privileges)

How to compile picotcp-server

  • clone or download picoTCP
  • compile picoTCP with make ARCH=shared TAP=1 WOLFSSL=1
  • modify PICOTCP_PATH at the top of Makefile, pointing to the picoTCP root directory
  • run make

Testing picotcp-server

Run picotcp-server with no arguments. If the executable was run with the right permissions (i.e. accessing /dev/net/tun), a tap0 device will be created, and the picoTCP endpoint address is set to 10.0.0.1/24.

The TLS server listens to port 11111 by default, and can be reached using the TLS client example.

Example:

# Server side:
./picotcp-server

# On client side:
ip addr add dev tap0 10.0.0.2/24
ip link set tap0 up

./client-tls 10.0.0.1