Skip to content
Branch: master
Find file History
Type Name Latest commit message Commit time
Failed to load latest commit information.
casting examples: add casting May 17, 2019
socketkey Return usable objects instead of nils Jun 27, 2019
stdin Return usable objects instead of nils Jun 27, 2019 examples: add reading from standard input Jun 26, 2019


In this directory are some useful and interesting code samples both for writing effective code using the library and for learning or exploratory purposes. Exploits and proof-of-concepts are also welcome.

Packages are able to import one another. This allows us to build up modules of functionality that work together to create more complex systems.

Adding a package

  1. Create a directory for your program and populate it with code. Check an existing module for guidance if needed.

  2. Add test code and benchmarks.

    The programs can then be run individually with

    go test -v -race ./examples/module_name

    or one after the other

    go test -v -race ./examples/...
  3. Add your program to the end of the packages section of this document.


You own your intellectual property and so you are free to choose any licence for your program. To do this, add a licence header to the top of your source files.


  1. [Apache-2.0] socketkey :: Streaming multi-threaded client->server transfer of secure data over a socket.
  2. [Apache-2.0] casting :: Some examples of representing the data in allocated buffers as different types.
  3. [Apache-2.0] stdin :: Reading from standard input directly into a guarded memory region and then sealing it.
You can’t perform that action at this time.