Displaying 1 to 13 from 13 results

nix - Rust friendly bindings to *nix APIs

  •    Rust

Nix seeks to provide friendly bindings to various *nix platform APIs (Linux, Darwin, ...). The goal is to not provide a 100% unified interface, but to unify what can be while still providing platform specific APIs. For many system APIs, Nix provides a safe alternative to the unsafe APIs exposed by the libc crate. This is done by wrapping the libc functionality with types/abstractions that enforce legal/safe usage.

libc-database - Build a database of libc offsets to simplify exploitation

  •    Shell

You can also add a custom libc to your database. Find all the libc's in the database that have the given names at the given addresses. Only the last 12 bits are checked, because randomization usually works on page size level.

printf - Tiny, fast, non-dependent and fully loaded printf implementation for embedded systems

  •    C

This is a tiny but fully loaded printf, sprintf and (v)snprintf implementation. Primarily designed for usage in embedded systems, where printf is not available due to memory issues or in avoidance of linking against libc. Using the standard libc printf may pull a lot of unwanted library stuff and can bloat code size about 20k or is not 100% thread safe. In this cases the following implementation can be used. Absolutely NO dependencies are required, printf.c brings all necessary routines, even its own fast ftoa (float), ntoa (decimal) conversion. If memory footprint is really a critical issue, floating point and 'long long' support and can be turned off via the PRINTF_SUPPORT_FLOAT and PRINTF_SUPPORT_LONG_LONG compiler switches. When using printf (instead of sprintf/snprintf) you have to provide your own _putchar() low level function as console/serial output.




z88dk - The development kit for over seventy z80 machines - c compiler, assembler, linker, libraries

  •    Assembly

Z88DK is a collection of software development tools that targets z80 machines. It allows development of programs in C, assembly language or any mixture of the two. What makes z88dk unique is its ease of use, built-in support for many z80 machines and its extensive set of assembly language library subroutines implementing the C standard and extensions. There are three ways to install z88dk.

libc - libc targeted for embedded systems usage

  •    C

Embedded Artistry's libc is a C standard library implementation targeted for embedded systems. Unlike many other C libraries that I've come across, this library implements unit tests and has addressed flaws in open-source implementations of the C standard library functions.

MonkOS - an experimental 64-bit operating system

  •    C

MonkOS is an experimental 64-bit operating system for Intel and AMD processors. It is a mix of C and assembly language and is a work in progress. Currently, it consists of a BIOS boot loader, a virtual console system, an interrupt handling system, a paged memory manager, a heap allocator, a few simple device drivers, and a primitive interactive shell. The boot loader is designed to launch the operating system from a cdrom. The OS currently builds under linux using a cross-compiler. There are two ways to build it: (1) by installing all the necessary tools on your system and running make, or (2) by using a ready-made docker container that contains all the build tools you'll need.


lisk - my linux c lib

  •    C

my linux c lib

zligc - libc implementation in zig

  •    C

A libc implementation in zig. Confirm the exported symbols with readelf -s libc.a.

crystal-autobind - Automatic C bindings generator for Crystal

  •    Crystal

The postinstall script will only be runned when included as a dependency on a project. The newly generated .cr bindings can be used to create a documented shard wrapper, that can be then require and used as a shard in your application.

detect-libc - Node.js module to detect the C standard library (libc) for use with prebuild

  •    Python

Node.js module to detect the C standard library (libc) implementation family and version in use on a given Linux system. Provides a value suitable for use with the LIBC option of prebuild, prebuild-ci and prebuild-install, therefore allowing build and provision of pre-compiled binaries for musl-based Linux e.g. Alpine as well as glibc-based.

go-crypt - Golang wrappers for glibc crypt(3)

  •    Go

If you have questions about how to use crypt (the C function), it is likely this is not the package you are looking for. NOTE Depending on the platform, this package provides a Crypt function that is backed by different flavors of the libc crypt. This is done by detecting the GOOS and trying to build using crypt_r (the GNU extension) when on linux, and wrapping around plain 'ol crypt (guarded by a global lock) otherwise.