[BREAKGLASS] Append-only mirror of github.com/signalapp/noise-c
Go to file
Nik Bougalis 6d94035818 Address noise_rand_bytes silent failure on Windows:
Per its documentation, `noise_rand_bytes` returns "cryptographically-strong
random bytes from the operating system."

On Windows, the existing implementation of the function does not check that
the `CryptGenRandom` API succeeds. While failure is unlikely, it is prudent
to actually check.

If merged this commit will cause the process to exit if the function is not
able to generate the requested number of random bytes; the code also checks
that the provided buffer is non-null and that the number of bytes requested
is non-zero.
2026-02-04 09:43:14 -08:00
doc Document that bison and flex are required 2016-11-17 05:35:57 +10:00
examples Switch to Kyber1024. 2024-08-07 09:11:14 -07:00
include Switch to Kyber1024. 2024-08-07 09:11:14 -07:00
m4 include pkg.m4 from pkg-config 0.29 to get PKG_CHECK_MODULES_STATIC 2016-11-16 17:01:33 -05:00
src Address noise_rand_bytes silent failure on Windows: 2026-02-04 09:43:14 -08:00
tests Use mlkem-libjade 2026-01-30 17:05:12 -07:00
tools forward declare yyparse to fix build with old bison 2.3 that ships with macOS 2016-11-07 16:12:42 -05:00
.gitignore Grammar and lexer outline for the protobuf compiler 2016-05-01 10:21:45 +10:00
.gitmodules Use mlkem-libjade 2026-01-30 17:05:12 -07:00
AUTHORS doc updates 2016-10-11 19:10:46 -04:00
autogen.sh add autogen.sh script 2016-10-05 12:50:32 -04:00
ChangeLog Add automake/autoconf build system 2016-04-29 19:42:50 +10:00
configure.ac Use mlkem-libjade 2026-01-30 17:05:12 -07:00
COPYING Continue with the protoc compiler 2016-05-07 19:09:33 +10:00
Makefile.am Move protoc to under the tools directory 2016-05-08 08:09:30 +10:00
NEWS Add automake/autoconf build system 2016-04-29 19:42:50 +10:00
README Add automake/autoconf build system 2016-04-29 19:42:50 +10:00
README.md Update link to documentation page 2021-04-09 05:02:13 +10:00

Noise-C Library

Noise-C is a plain C implementation of the Noise Protocol, intended as a reference implementation. It can also be referred to as "Noisy", which is what you get when you say "Noise-C" too fast. The code is distributed under the terms of the MIT license.

The documentation contains more information on the library, examples, and how to build it.

For more information on this library, to report bugs, to contribute, or to suggest improvements, please contact the author Rhys Weatherley via email.