0.15.1 • Published 9 years ago

thc v0.15.1

Weekly downloads
3
License
ISC
Repository
github
Last release
9 years ago

telehash tools library in c

This is a full implementation of telehash in portable c for embedded systems, designed to be source that can be copied into other projects.

Building

Just run make to build a libtelehash.a and some utility apps into bin/*. Use make test to run a full test suite, and make static to generate a current standalone telehash.c and telehash.h.

Use npm install to automatically install optional crypto dependencies (libsodium and libtomcrypt).

Library Interface

The codebase is a set of components that can be used to create/integrate telehash services, here's a rough layout, see src/ and include/ for details.

  • e3x_*: all of the crypto handling
  • mesh_* and link_*: higher level easy interfaces for apps
  • ext_*: various useful extensions to a mesh to support built-in channels
  • pipe_* and net_*: transport and networking handling
  • util_* and libs: portable utilities and bundled libs

There's many examples of usage in the bundled tests.

Memory Notes

Most of the codebase uses lob_t as the primary data type since it handles JSON and binary for all packets.

The following methods return generated lobs (you must free):

  • e3x_channel_receiving
  • e3x_channel_sending
  • e3x_channel_oob
  • e3x_channel_packet
  • e3x_self_decrypt
  • e3x_exchange_message
  • e3x_exchange_handshake
  • e3x_exchange_receive
  • link_handshakes
  • link_sync
  • link_resync
  • mesh_on_open (callback must return or free the given lob)

And these methods consume lobs (will be free'd):

  • e3x_channel_receive
  • e3x_channel_send
  • link_handshake
  • link_receive
  • link_receive_handshake
  • link_send
  • link_flush
  • link_direct
  • mesh_handshake
  • mesh_handshakes
  • mesh_receive
  • mesh_receive_handshake
0.15.1

9 years ago

0.14.4

9 years ago

0.15.0

9 years ago

0.14.0

9 years ago

0.13.9

9 years ago

0.13.8

9 years ago

0.13.7

9 years ago

0.13.6

9 years ago

0.13.5

9 years ago

0.13.4

9 years ago

0.13.3

9 years ago

0.13.2

9 years ago

0.13.1

9 years ago

0.12.5

9 years ago

0.12.3

9 years ago

0.13.0

9 years ago

0.12.9

9 years ago

0.12.8

9 years ago

0.12.6

10 years ago

0.12.4

10 years ago

0.12.2

10 years ago

0.0.25

10 years ago

0.0.24

10 years ago

0.0.22

10 years ago

0.0.21

10 years ago

0.0.19

10 years ago

0.0.18

10 years ago

0.0.17

10 years ago

0.0.16

10 years ago

0.0.15

10 years ago

0.0.14

10 years ago

0.0.13

10 years ago

0.0.12

10 years ago

0.0.11

10 years ago

0.0.10

10 years ago

0.0.9

10 years ago

0.0.8

10 years ago

0.0.7

10 years ago

0.0.6

10 years ago

0.0.5

10 years ago

0.0.4

10 years ago

0.0.3

10 years ago

0.0.2

10 years ago

0.0.1

10 years ago