package checkseum

  1. Overview
  2. Docs
Adler-32, CRC32 and CRC32-C implementation in C and OCaml

Install

Dune Dependency

Authors

Maintainers

Sources

checkseum-v0.1.0.tbz
sha256=0f154f2e0537d524db91771784d4ac26696e718df0120e3bab798f6a38d8ac2d
sha512=6254f135abd60e62b9eb3e9b65903a546eb2058d14e92a5cc0be94380f2d11da652ab24d2a672f2bca7d509eb19eae6da5bad7deb4ca3b438b8759ae71e3d3b3

Description

Checkseum is a library to provide implementation of Adler-32, CRC32 and CRC32-C in C and OCaml.

This library use the linking trick to choose between the C implementation (checkseum.c) or the OCaml implementation (checkseum.ocaml). This library is on top of optint to get the best representation of an int32.

Published: 20 May 2019

README

Checkseum

Chekseum is a library which implements ADLER-32 and CRC32C Cyclic Redundancy Check. It provides 2 implementation, the first in C and the second in OCaml. The library is on top of optint to get the best representation of the CRC in the OCaml world.

Then, as digestif, checkseum uses the linking trick. So if you want to use checkseum in a library, you can link with the checkseum package which does not provide an implementation. Then, end-user can choose between the C implementation or the OCaml implementation (both work on Mirage).

Of course, you can link directly to checkseum.c or checkseum.ocaml if you want to make an executable directly.

Build Requirements

  • OCaml >= 4.03.0

  • base-bytes

  • base-bigarray

  • dune to build

  • optint

Dependencies (8)

  1. cmdliner
  2. rresult
  3. fmt
  4. base-bigarray
  5. base-bytes
  6. optint < "0.0.5"
  7. dune >= "1.9.2" & < "2.6"
  8. ocaml >= "4.03.0"

Dev Dependencies (1)

  1. alcotest with-test

Used by (7)

  1. albatross
  2. decompress >= "0.8" & < "1.0.0"
  3. esperanto-cosmopolitan >= "0.0.5"
  4. git >= "2.0.0" & < "3.0.0"
  5. irmin-pack >= "3.5.0"
  6. oneffs
  7. rfc1951 < "1.0.0" | >= "1.4.0"

Conflicts (3)

  1. mirage-runtime < "4.0.0"
  2. ocaml-freestanding < "0.4.3"
  3. mirage-xen-posix < "3.1.0"