An implementation of the Rabin-Karp hash in C, useful for content based splitting of files. It provides a callback based mechanism for handling the chucks and supports a configurable maximum and minimum block size.