Twenty-odd years of C on Linux, for fun and profit, plus whatever
else came along the way. Some of these link straight out to
GitHub rather than
having a page of their own here yet.
compression
bmo — Burrows-Wheeler, move-to-front, Elias omega coding based lossless compression.
funky — An alternative BrettSpielWelt Funkenschlag/PowerGrid client, Python + GTK+3.
ircnukes — An online zero-sum game blending strategic thinking and unthinking brutality, set in the current, possibly terminal, era of human existence. Based on the Nuclear War card game.
kapital — An online Monopoly-playing bot using eigenvector centrality to estimate steady-state landing probabilities and inform play.
libmc — A C library for messing with Minecraft worlds.
code-fu & historical stuff — Small one-file snippets and programs — prime sieves, a packet sniffer, a password strength checker, and more.
intrusion-detection
firestorm — A high-performance, modular network intrusion detection system. Essentially redundant now that Suricata exists.
fwmon — Monitors ipchains/iptables output in realtime — logs to a file, stdout, and/or tcpdump-format capture logs, and supports running non-root and chrooted. Linux-only.
nads — N.A.D.S. — Normalized Attack Detection System. An HTTP normalization library and Squid ACL helper, from back before projects like this had a natural home on GitHub.
kernel
HierOS — "The Hierophant." A legacy-free 64-bit kernel with SMP support.
ScaraOS — A 32-bit multiboot OS kernel for IA32 (PC/AT) systems, written to teach myself OS fundamentals and have some fun. PCI support, the beginnings of paged memory management, the start of a VFS layer.
uxen — Code at Bromium for efficiently converting physical Windows laptop disk images to VM disk images.
ashttpd — Fast(er|est) HTTP daemon, originally used as an async-sendfile testbed.
chanirc — An experimental IRC client with inline web image display.
fwmon — Monitors ipchains/iptables output in realtime — logs to a file, stdout, and/or tcpdump-format capture logs, and supports running non-root and chrooted. Linux-only.
LVSmon — A cluster monitoring daemon, originally meant to replace tools like ldirectord and mon for maintaining LVS tables. Secure, reliable, scalable.
ashttpd — Fast(er|est) HTTP daemon, originally used as an async-sendfile testbed.
programming
autober — A language for generating BER decoders. Simpler than a full ASN.1 compiler — it only deals with BER-encoded messages — and aimed at smartcard and RFID applications, where most on-device data is BER-encoded TLV.
neostatic — A small Neocities static blog generator — the precursor to the tool this site itself is built with.
sweet-rev-eng — A graphical decompiler and reverse-engineering toolkit, developing techniques for recovering C source (as close as possible) from machine code.
webschlong.c — Queries Websense servers using WISP.
security
nads — N.A.D.S. — Normalized Attack Detection System. An HTTP normalization library and Squid ACL helper, from back before projects like this had a natural home on GitHub.
smartcards
acgtools — A driver for the ACG HF MultiISO RFID reader — an OEM RFID reader circuit behind an FTDI USB serial converter, talking ASCII or (carefully) binary. Tools like RFIDIOt already support this device; this went after some of its extended features.
ccid-utils — A USB smartcard driver and development platform. Simple synchronous design, multiple slots but one transaction at a time, with a Python interface. Includes a command-line smartcard shell with searchable history.