Skip to content

rphillips/selene

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Selene - A SSL/TLS library

Selene has a few goals that makes it different from a more traditional 
SSL libraries:

  * Completely Asynchronous: Selene does no IO itself, it only provides
    notifications to the user that IO should be done.

  * Asynchronous Callbacks: Callback functions provide their own callback
    to notify Selene when the user has finished an operation.

  * Test Driven: A test framework to test all code paths.

  * Plugable Backends for Cryptography: Currently only focusing
    on OpenSSL, but others are possible.

  * Liberal License: Under the Apache Software License 2.0

Selene is named after the Greek Goddess of the Moon, because I am 
terrible at naming projects:
  <http://en.wikipedia.org/wiki/Selene>

Status:
  A prototype backend (openssl-threaded) was used to validate the basics
  of the selene_* API.  I am currently slowly working on the native Selene
  TLS backend, which only uses OpenSSL for cryptographic operations, but
  not the actual protocol parsing.

Hacking Notes:
  * All contributors must sign an Apache Software Foundation CLA,
    <http://www.apache.org/licenses/icla.txt> and agree
    that Selene may be moved to the ASF at a future date.

  * External Functions and types are prefixed with selene_*
  * Internal Functions and types are prefixed with sln_*
  * 2 Spaces, httpd-ish style C.
  * Write test cases for all code paths, including errors.

Releases

No releases published

Packages

No packages published

Languages

  • C 56.4%
  • Shell 43.3%
  • Python 0.3%