C/Invoke is a library which can call C functions at runtime with no prior knowledge of the function prototypes. This capability is used to allow any language to call native libraries without writing a separate module in C, similar to the P/Invoke functionality of the .NET framework.
C99‑snprintf is a free, portable, and C99 compliant implementation of the snprintf(3), vsnprintf(3), asprintf(3), and vasprintf(3) functions. It can be included with software packages as replacement code for systems which don't provide (C99 compliant versions of) these functions.
CADTools is a modern 3D computer-aided design (CAD) and manufacturing (CAM) toolkit. The aim of the project is to develop an easy-to-use parametric, feature-based solid modeler with a generic geometrical constraint solver sufficiently robust for real-time mechanical simulations over complex assemblies.
CAN is a packaging program that uses a format similar to JAR, but with some improvements. CAN uses only existing, open source tools for its implementation. It packages any executable and libraries, supports executable CANs, and can even tweak environment variables before execution.
CCured is a source-to-source translator for C. It analyzes the C program to determine the smallest number of run-time checks that must be inserted in the program to prevent all memory safety violations. The resulting program is memory safe, meaning that it will stop rather than overrun a buffer or scribble over memory that it shouldn't touch. Many programs can be made memory-safe this way while losing only 10-60% run-time performance. CCured can find more bugs that Purify misses but with much less run-time cost.
CGI::SHTML is a perl module for parsing Apache SSI directives within a CGI script, without going through Apache itself. It was specifically designed to operate like start_html() and end_html() within CGI.pm while including the same SSI headers and footers that the main Web site parses. While it is not ready for deployment on large production Web sites, it has served well for several years on a mid-sized academic site.
CIL is a frontend for the C programming language which facilitates program analysis and transformation. CIL will parse and typecheck a program, and compile it into a simplified subset of C. For example, in CIL, all looping constructs are given a single form and expressions have no side effects. This reduces the number of cases which must be considered when manipulating a C program. CIL has been used for a variety of projects, including CCured, a tool which makes C programs memory safe. It supports ANSI C, as well as most of the extensions of the GNU C and Microsoft C compilers. A Perl script acts as a drop-in replacement for either gcc or Microsoft's cl, and allows merging of the source files in your project. Other features include support for control-flow and points-to analyses.
CIRCLean aims to be used by someone receiving a USB key from an untrusted source who wants to see the content without opening the original and potentially malicious files. The code runs on a Raspberry Pi, which means it is never required to plug the original USB key into a computer.