C Utility Library
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Jake Wakeling 7f427d9a31 Relicense to MIT 2 years ago
man Relicense to MIT 2 years ago
src Relicense to MIT 2 years ago
.gitignore Relicense to MIT 2 years ago
BuildUNIX.sh meta: Add base project files 3 years ago
CMakeLists.txt Relicense to MIT 2 years ago
LICENCE Relicense to MIT 2 years ago
README.md Relicense to MIT 2 years ago
TestUNIX.sh meta: Restructure project 3 years ago

README.md

libutil

libutil is a lightweight library to be included locally in projects that is intended to provide common portable extensions to the C standard library.

Components

Component Description Standard
alloc Memory allocation wrapper functions
base32 Encode or decode Base32
base64 Encode or decode Base64
crypt General cryptography functions
endian Endianness related functions
error Error reporting functions
fnv FNV hashing algorithms
map Generic hashmap data structure
mode Parse numeric or symbolic POSIX modes
optget Parse command line options
rc2 RC2 encryption algorithm RFC 2268
strconv String conversion functions
util Base typedefs and macros

Note that util.h is required by many other libutil components.

Usage

libutil is being developed on x86-64 Linux, is untested elsewhere, and some components may depend on POSIX provided functionality.

libutil source files are intended to be built directly into projects, rather than being compiled seperately and linked.

Dependencies

  • CMake >= 3.12, to build

Building

To build libutil and its unit tests on UNIX, run BuildUNIX.sh.

  • Binaries will be located in the bin directory.
  • Libraries will be located in the lib directory.

Testing

To run libutil unit tests on UNIX, run TestUNIX.sh once built.

Meta

Copyright (C) 2020, Jakob Wakeling
MIT Licence