cso is an easy to use C module that serializes objects into a simple binary format. It can be used to store data or to send it over a network. It supports either an object of type struct (CSO_DICT) or array (CSO_ARRAY) which contains elements of type integer of different sizes, double, binary, string, struct, or array.
s6-dns is a small, efficient, complete, and IPv6-ready DNS client library, with synchronous as well as asynchronous APIs. It is designed to replace libresolv in projects that need to perform DNS resolution. It also comes with small command-line utilities to make common and not so common DNS queries.
cmocka is a unit testing framework for C with mock objects. There are a variety of C unit testing frameworks available supporting different platforms and compilers. Some development requires a lot of different compilers and older versions, which makes it difficult to use unit testing frameworks. The idea of CMocka is that a test application only requires the standard C library and CMocka itself to minimize the conflicts with standard C library headers, especially on a lot of different platforms.
ext-Dns is a core library, an extensible forward DNS server, and some additional tools designed to create DNS server solutions which are able to do any additional operation at the resolution level (running commands, rewritting replies, gathering stats, and so on), without any limit. It provides a ready-to-use solution in case you want to build a DNS server which takes additional actions at the resolution level in an easy way. That is, its design is focused on allowing people to implement whatever they like when a request is received, freeing them from most of the details which involves handling DNS protocol.
fpgatools is a toolchain for programming flexible programmable gate arrays (FPGAs). The only supported chip at this time is the xc6slx9, a cheap (circa $10 U.S.) but powerful 45nm-generation chip with about 2400 LUTs, block ram, and multiply-accumulate devices. The principles of fpgatools are to reach the maximum physical performance of the chip, to provide fast development cycles, to be an independent toolchain which only depends on other Free Software, and to be a lightweight C implementation without a GUI.
EXIP provides a C library for the parsing and serialization of Efficient XML Interchange (EXI) format streams. The focus is portability and efficiency for embedded systems development. The project was started at the EISLAB research group in the Department of Computer Science, Electrical and Space Engineering, Luleå University of Technology, and is part of research efforts to bring resource-constrained embedded devices, such as wireless sensor nodes, closer to the enterprise business processes taking place in processing, manufacturing, and communication industries.
STALLioN is a cross-platform C/C++ library for creating coherent CLI/Terminal programs on multiple platforms with one codebase. It aims to provide a consistent development API across multiple platforms so that separate code does not have to be created for each (often very different) terminal interface.
NXWEB is ultra-fast and super-lightweight web server for applications written in C. It can serve thousands of concurrent requests with a small memory footprint using an event-driven and multi-threaded model that is designed to scale. It features an exceptionally light code base, a simple API, decent HTTP protocol handling, keep-alive connections, SSL support (via GNUTLS), HTTP proxy (with keep-alive connection pooling), non-blocking sendfile support (with configurable small file memory cache), cacheable gzip content encoding, cacheable image thumbnails with watermarks (via ImageMagick), a modular design for developers, and the ability to run as a daemon.
Wslay is a WebSocket library written in C. It implements the protocol version 13 described in RFC 6455. This library offers 2 levels of API: an event-based API and a frame-based low-level API. For the event-based API, it is suitable for non-blocking reactor pattern style. You can set callbacks in various events. For the frame-based API, you can send WebSocket frame directly. Wslay only supports the data transfer part of the WebSocket protocol and does not perform the opening handshake in HTTP. It does not perform any I/O operations for its own. Instead, it offers callbacks for them. This makes Wslay independent of any I/O frameworks, SSL, sockets, etc. It is portable across various platforms, and the application authors can choose I/O frameworks freely.